C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[8067] Edit와 TrackBar의 연동에서...
김정규 [ritzblue] 1380 읽음    2001-06-09 02:08
에디트 박스와 트랙바를 연동시켜 사용하고자 합니다...

트랙바가 움직일 때마다 그 값이 에디트 박스에 나오게 하고

반대로 에디트 박스에 값을 넣으면 그 값에 해당하는 위치로 트랙바가 옮겨가게 말이죠....

StrToInt()와 IntToStr() 함수를 써서 두 컴포넌트를 연동시키고 있습니다...

트랙바를 움직일 때마다 그 값이 에디트 박스에 나오게 하는 건 OnChange 핸들러에서 구현했습니다....

근데 에디트 박스의 값이 변할 때마다 그 값에 해당하는 위치로 트랙바가 옮겨지게 하는 부분에서 문제가 생기네요....

처음엔 OnEnter 핸들러를 이용했는데 OnEnter 핸들러를 쓰니까 다이얼로그가 종료되버려서 OnChange 핸들러를 사용하고 있습니다...

에디트 박스를 처음 클릭한 후 값을 넣으면 아무 문제없이 트랙바의 위치도 옮겨지는데

문제는 에디트 박스의 값을 모두 다 지울 경우에 에러 메세지를 띄우면서 프로그램이 죽어버립니다...

메세지를 읽어보니 ......'' is not valid integer value......

라고 있더군요...

아마 StrToInt() 함수의 인자에 공백이 들어가서 그런 것 같습니다...

어떻게 하면 될까요???

OnEnter 핸들러를 사용하면 저 문제는 없어지는데 다이얼로그가 종료되니까 사용하기가 좀 그렇네요...

아니면 OnEnter 핸들러에서 엔터키를 막아버리는 것도 한 방법인 것 같은데 어떻게 막는지 모르겠구요....

고수님들의 한수 가르침 부탁드립니다... 꾸벅~~

+ -

관련 글 리스트
8067 Edit와 TrackBar의 연동에서... 김정규 1380 2001/06/09
8084     Re:Edit와 TrackBar의 연동에서... 수야 1389 2001/06/09
8074     Re:Edit와 TrackBar의 연동에서... 최창욱 1309 2001/06/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.