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
[3459] Re:[질문]마우스 클릭을 발생시키는 함수가 없나요???
[] 4132 읽음    2000-05-15 00:00
김시환 님이 쓰신 글 :
: 임의로 사용자가 마우스를 누르지 않아도 자동으로 클릭을 발생시키는
: 함수가 없나 해서 이렇게 올립니다.
:
: 좀 알려 주세요...



아래의 SendMessage API를 호출하면 됩니다.

LRESULT SendMessage(
    HWND hWnd,    // 메시시를 받을 윈도우의 윈도우 핸들(객체의 Handle 속성)
    UINT Msg,    //  메시지 번호
    WPARAM wParam,    // 가상키 상태 플래그 조합
    LPARAM lParam     // 마우스 메시지 발생 위치=> 하위 워드: X 상위워드:Y
   );   

마우스 메시지(번호):
왼쪽: WM_LBUTTONDOWN, WM_LBUTTONUP, WM_LBUTTONDBLCLK
오른쪽: WM_RRTTONDOWN, WM_RBUTTONUP
가운데: WM_MBUTTONDOWN , WM_MBUTTONUP, WM_MBUTTONDBLCLK
기타: WM_MOUSEACTIVATE, WM_MOUSEMOVE, WM_MOUSEWHEEL

가상키:
MK_CONTROL, MK_LBUTTON, MK_MBUTTON ,MK_MBUTTON ,MK_RBUTTON, MK_SHIFT 등   

예를 들어,  Ctrl키와 Shift 키가 눌려진 상태에서,  (20,30) 지점에서 마우스 왼쪽 단추가 클릭되었다고 Form2에 메시지를 보내려면 아래와 같이 하면 됩니다.
DWORD Pos=20;
Pos <<= 16;
Pos |= 30;
SendMessage(Form2->Handle, WM_LBUTTONDOWN, MK_CONTROL |  MK_SHIFT  , Pos);

끝.

+ -

관련 글 리스트
3452 [질문]마우스 클릭을 발생시키는 함수가 없나요??? 김시환 3181 2000/05/14
3459     Re:[질문]마우스 클릭을 발생시키는 함수가 없나요??? 4132 2000/05/15
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.