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
[47341] Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요..
장성호 [nasilso] 953 읽음    2006-12-08 00:48
[기본원리]
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:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 장성호 953 2006/12/08
47343         Re:Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 허접 837 2006/12/08
47350             Re:Re:Re:왜이렇게 모르고 막히는게 많을까요.. ㅠ.ㅜ 도와주세요.. 장성호 1134 2006/12/08
47357                 아.. 감사합니다.. 그런데.. 허접 832 2006/12/08
47362                     Re:아.. 감사합니다.. 그런데.. 장성호 996 2006/12/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.