|
에디트 박스와 트랙바를 연동시켜 사용하고자 합니다...
트랙바가 움직일 때마다 그 값이 에디트 박스에 나오게 하고
반대로 에디트 박스에 값을 넣으면 그 값에 해당하는 위치로 트랙바가 옮겨가게 말이죠....
StrToInt()와 IntToStr() 함수를 써서 두 컴포넌트를 연동시키고 있습니다...
트랙바를 움직일 때마다 그 값이 에디트 박스에 나오게 하는 건 OnChange 핸들러에서 구현했습니다....
근데 에디트 박스의 값이 변할 때마다 그 값에 해당하는 위치로 트랙바가 옮겨지게 하는 부분에서 문제가 생기네요....
처음엔 OnEnter 핸들러를 이용했는데 OnEnter 핸들러를 쓰니까 다이얼로그가 종료되버려서 OnChange 핸들러를 사용하고 있습니다...
에디트 박스를 처음 클릭한 후 값을 넣으면 아무 문제없이 트랙바의 위치도 옮겨지는데
문제는 에디트 박스의 값을 모두 다 지울 경우에 에러 메세지를 띄우면서 프로그램이 죽어버립니다...
메세지를 읽어보니 ......'' is not valid integer value......
라고 있더군요...
아마 StrToInt() 함수의 인자에 공백이 들어가서 그런 것 같습니다...
어떻게 하면 될까요???
OnEnter 핸들러를 사용하면 저 문제는 없어지는데 다이얼로그가 종료되니까 사용하기가 좀 그렇네요...
아니면 OnEnter 핸들러에서 엔터키를 막아버리는 것도 한 방법인 것 같은데 어떻게 막는지 모르겠구요....
고수님들의 한수 가르침 부탁드립니다... 꾸벅~~
|