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
[47343] Re:Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요..
허접 [] 837 읽음    2006-12-08 02:50
장성호님.. 답변 감사드립니다.
그런데,  getcursorpos를 이용해서 커서 좌표 알아내고 해봤는데, 잘 안되네요.  ㅠ.ㅜ
기존 소스에서는 어떻게 방법이 없는건가요??



장성호 님이 쓰신 글 :
: [기본원리]
: Timer를 이용하세요
: Timer로 원하는 시간 간격으로 ( 100ms ........)  Mouse의 Position을 체크해서
: Image12위에있으며... 내려주고
: Image13위에 있으면 올려주고 그러면 되겠네요
:
: 그다음
: [추가 고려사항]
:  Timer 이벤트는 시간 설정해 놓은 만큼 주기적으로 뜨는것은 아실테고
:  OnTimer 이벤트에서 MouseCursor가 어떻게 Image위에 있는지 아느냐가 문제겠죠?
:
: 1) GetCursorPos 를 이용
:     이것은 GetCursorPos 라는 함수로 알수 있습니다.
:     이 함수로 알수 있는 좌표는 Screen절대좌표이기때문에...
:     Image의 상대좌표로 봐꿔 줘야 겠죠
:    그런다음 Image  위치와 크기를알고 있으므로 .. Mouse가 Image위이엤는지 없는지 알수 있겠죠?
:
: 2) 뭐 구현해 보지는 않았는데...
:     Button같은 경우 OnEnter 이벤트와 OnExit 이벤트가 있습니다.
:     커서가 Enter된후 Exit가 일어나기 전까지는 Button위에 있다고 볼수잇겠죠?
:     Image12 ,Image13 대신 Image를 넣을수 있는  BitBtn같은것으로 바꿔서 해보는것도 대안이 될수 있을것 같구요
:     또는 Image12 ,Image13  를 서브클래싱해서 Enter Exit 를 잡는방법도 있을것 같습니다.
:
:
:
:
:
: 허접 님이 쓰신 글 :
: : 안녕하세요.
: : 허접입니다.
: : 왜이렇게 모르는게 많고 막히는게 많을까요.   ㅠ.ㅜ
: : 죽고싶네요.  ㅠ.ㅜ
: :
: : 소스좀 봐주세요~
: :
: : void __fastcall TForm1::Image12MouseMove(TObject *Sender,
: :       TShiftState Shift, int X, int Y)
: : {
: :     if (Image11->Top == 0)
: :     {
: :     }
: :
: :     else Image11->Top += 10;
: :    
: : }
: : //---------------------------------------------------------------------------
: :
: : void __fastcall TForm1::Image13MouseMove(TObject *Sender,
: :       TShiftState Shift, int X, int Y)
: : {
: :     if (Image11->Top == -220)
: :     {
: :     }
: :     else Image11->Top -= 10;
: : }
: :
: : 현재 위와 같은 소스로 image12에 마우스 커서를 갖다대고 움직이면 이미지가 10씩 위로 올라가고,
: : image13에 마우스 커서를 갖다대고 움직이면 이미지가 10씩 아래로 내려갑니다.
: : 근데, 문제는....
: : 해당 위치 (image12, image13) 위에서 마우스 커서를 움직여야만 그림이 위/아래로 10씩 움직인다는거죠.
: : 해당 위치에 마우스 커서만 갖다 놓아도 그림이 위/아래로 10씩 움직이게 하고 싶거든요.
: : for 문을 돌려서 해봤더니, 너무 빨리 for문이 돌아서 그런지..  그냥 마지막에 보여져야 할 부분으로 이미지가 이동해 버립니다.
: : 무슨 방법 없을까요?
: : 도와주세요~   ㅠ.ㅜ

+ -

관련 글 리스트
47340 왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 허접 870 2006/12/07
47341     Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 장성호 954 2006/12/08
47343         Re:Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 허접 837 2006/12/08
47350             Re:Re:Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 장성호 1134 2006/12/08
47357                 아.. 감사합니다.. 그런데.. 허접 833 2006/12/08
47362                     Re:아.. 감사합니다.. 그런데.. 장성호 997 2006/12/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.