mouse_event 예제

mouse_event 함수는 커서를 약간 잘못된 좌표로 보냅니다(1-20픽셀 끄기). “꺼져”는 정도의 정도는 내가 확실히 알아낼 수없는 패턴을 기반으로합니다. 왜 이런 일이 일어날 수 있는지 어떤 생각이? 그것은 더 복잡한 구현에서 발생뿐만 아니라 내가 정량화 할 수없는 방법으로이 것과는 달리, 그래서 나는 그것이 mouse_event 함수 자체 또는 내가 이해하지 못하는 일부 기능 내에 있어야한다고 생각이 실행되는 경우 마우스가 아래로 오른쪽으로 이동결과 화면 왼쪽에서 다시 백업합니다. 그러나 더 아래로 갈수록 “mouse_event”에 의해 생성 된 마우스 움직임이 더 부정확해집니다. 코드를 참조하여 mouse_event API 함수가 선언되는 방법과 MouseEventFlags 열거형이 정의되는 방법을 알아봅니다. Const MOUSEEVENTF_WHEEL Int32로 = 2048 Const MOUSEEVENTF_WHEEL_DELTA As Int32 = 120 개인 선언 함수 apimouse_event Lib “user32″ 별칭 “mouse_event” (ByVal dwFlags as Int32, ByVal dX as Int32, ByVal dY as Int32, ByVal dY as Int32, ByVal byVal dwExtraInfo 로 int32) 부울 개인 선언 기능 apiGetMessageExtraInfo Lib “user32″ 별칭 “GetMessageExtraInfo” () Int32 개인 하위 플레이 스크롤 (Int32로 ByVal 번호, Int32로 선택적 ByVal 증분 2) 오류 다음에 대 한 오류 재개 int32 = 1 에 번호 apimouse_event(MOUSEEVENTF_WHEEL, 0, 0, 증분, apiGetMessageExtraInfo) 시스템을 사용하는 다음 끝 서브; System.Collections.Generic 사용; System.도면 사용; System.Text 사용; System.Windows.Forms 사용 System.Runtime.InteropServices를 사용 하 여; System.스레딩 사용; 네임스페이스 PInvoke_DllImport_Cs { 공용 부분 클래스 양식1 : 양식 { 공용 양식1() { 초기화 구성 요소(); } CONST 마우스EVENTF_LEFTDOWN = 0×0002; CONst uint MOUSEEVENTF_LEFTUP = 0×0004; [DllImport("user32.dll")] 개인 정적 외각 보이드 mouse_event(uint dwFlags, uint dx, uint dy, uint dwData, int dwExtraInfo); 개인 보이드 타이머1_Tick(System.Object 발신자, System.EventArgs e) { mouse_event(MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0, 0); 스레드.수면(100); mouse_event(마우스EVENTF_LEFTUP, 0, 0, 0, 0); } } } 이 프로그램은 mouse_event API 함수를 사용하여 마우스 이동을 시뮬레이션하고 마우스 클릭을 시뮬레이션합니다. 상속 System.Windows.Forms.Form 선언 자동 하위 마우스_event Lib “user32″ (Int32로 ByVal dwFlags, Int32로 ByVal dx, ByVal dy as Int32, ByVal dwExtraInfo as IntPtr로 ByVal dwExtraInfo) Const MOUSEEVENTF_MOVE 로 Int32 = &H1 마우스 마우스 마우스 이동 왼쪽 아래 Int32 = & H2 ` 왼쪽 버튼 아래 Const MOUSEEVENTF_LEFTUP 로 Int32 = & H4 ` 왼쪽 버튼 위로 Const MOUSEEVENTF_RIGHTDOWN Int32 = & H8 ` 오른쪽 버튼 아래 Const 32 = & H10 ` 오른쪽 버튼 위로 Const MOUSEEVENTF_MIDDLEDOWN Int2 중간 버튼 아래로 Const MOUSEEVENTF_MIDDLEUP Int32 = & H40 ` 중간 버튼 으로 Const MOUSEEVENTF_Absolute Int32 = & H8000 ` 절대 이동 Const32 = & H800 ` 휠 버튼 압연 ` 마우스를 이동 시뮬레이션 ` 그림 상자의 중앙에 마우스를 이동 시뮬레이션 클릭합니다. 개인 하위 cmdClick_Click (ByVal eventSender System.Object, ByVal eventArgs System.EventArgs) 핸들 cmdClick.Click dim cur_x 로 단일 Dim dest_y 로 단일 Dim dest_y 로 단일 dim dest_y ` 마우스_이벤트는 좌표 계에서 이동 ` (0, 0) 왼쪽 위 모서리에 있고 ` (65535,65535)는 오른쪽 아래 모서리에 있습니다. ` 현재 마우스 좌표를 얻고이 새로운 시스템으로 변환합니다. cur_x = System.Windows.Forms.X. 65535 / 시스템.Windows.Forms.Screen.PrimaryScreen.Bounds.Width cur_y = System.Windows.Forms.Cursor.Position.Y * 65535 / System.Windows.Forms.Windows.Forms.Kr.Windows.Forms.Kr.Windows.Forms.Kr.Windows.Forms.A.를 변환합니다.화면.기본 화면.범위.높이 이 새로운 시스템에 `picClicker 픽처 박스의 중심의 좌표.

This entry was posted in Uncategorized. Bookmark the permalink.

Comments are closed.