BOOK NOW!
[contact-form-7 404 "Not Found"]

mouse_event 예제

02 Aug mouse_event 예제

[DllImport(“user32.dll”)] 정적 외각 보이드 마우스_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo); [플래그] 공개 열거형 마우스이벤트플래그 { LEFTDOWN = 0x000000002, LEFTUP = 0x000000004, 미들다운 = 0x00000020, 미들업 = 0x00000040, MOVE = 0x00000001, 절대 = 0x00008000, RIGHTDOWN = 0x00000008, RIGHTUP = 0x00000000} 공용 정적 Void (int x, yt) { 커서.위치 = 새로운 System.Drawing.Point(x, y); mouse_event((int)(MouseEventFlags.LEFTDOWN), 0, 0, 0, 0; 마우스_event((마우스이벤트플래그.LEFTUP), 0, 0, 0, 0); } 마우스 단추 상태를 지정하는 값은 진행 중인 조건이 아닌 상태의 변화를 나타내도록 설정됩니다. 예를 들어 왼쪽 마우스 단추를 길게 누르면 왼쪽 단추를 처음 누를 때 MOUSEEVENTF_LEFTDOWN이 설정되지만 후속 모션에는 설정되지 않습니다. 마찬가지로 MOUSEEVENTF_LEFTUP는 버튼이 처음 해제될 때만 설정됩니다. 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) 다음 끝 하위 마우스_event API 함수가 선언 되는 방법 및 MouseEventFlags 열거형 정의 하는 방법을 배울 수 있는 코드를 참조 합니다. 이 실행되면 마우스가 화면 왼쪽 상단에서 아래로 오른쪽으로 이동한 다음 다시 백업합니다. 그러나 더 아래로 갈수록 “mouse_event”에 의해 생성 된 마우스 움직임이 더 부정확해집니다. 다음으로 프로그램은 mouse_event API 함수를 사용하여 마우스를 대상 위치로 이동하고 마우스를 클릭합니다. 일반 마우스 클릭 이벤트를 시뮬레이션하기 때문에 폼의 Click 이벤트 처리기가 실행되고 대상 지점에서 X를 그립니다. mouse_event 함수는 커서를 약간 잘못된 좌표로 보냅니다(1-20픽셀 끄기). “꺼져”는 정도의 정도는 내가 확실히 알아낼 수없는 패턴을 기반으로합니다.

이 프로그램은 mouse_event API 함수를 사용하여 마우스 움직임을 시뮬레이션하고 마우스 클릭을 시뮬레이션합니다. ` 현재 좌표에서 왼쪽 마우스 버튼을 클릭 합니다 가져오기 System.Runtime.InteropServices 가져오기 시스템.스레딩 공용 클래스 양식1 Const MOUSEEVENTF_LEFTDOWN UInteger = 및 H2 `0x00002 Const MOUSEEVENTF_LEFTUP UInteger = 및 H4 `0x00004 _ 개인 공유 하위 마우스_event (ByVal dwFlags as UInteger, ByVal dx as UInteger, ByVal dy as UInteger, ByVal dwData as UInteger, ByVal dwExtraInfo As Integer) 엔드 서브 서브_이벤트 Lib “user32” , ByVal dx 만큼, ByVal dy만큼, ByVal dwExtraData 만큼, ByVal dwExtraInfo만큼) 개인 하위 타이머1_Tick (ByVal 보낸 사람으로 System.Object, ByVal e System.EventArgs) 처리 timer1.Tick 마우스_event (MOUSEEVENTF_LEFTDOWN, 0, 0, 0) 스레드.Sleep(100) 마우스 마우스 _event(MOUSEEVENTF_LEFTUP, 0, 0, 0, 0) 종료 하위 엔드 클래스 mouse_event는 마우스 좌표만 설정할 수 있는 매우 기본적인 기능입니다. 그것은 대체되었고 마이크로 소프트는 대신 SendInput을 사용하여 다시 comcomends. 그럼에도 불구 하 고, 그것은 여전히 작동 (비록 내가 확실히 말할 수 없습니다 그것은 윈도우의 향후 릴리스에서 작동 합니다.). 시스템 사용; System.Collections.Generic 사용; System.도면 사용; System.Text 사용; System.Windows.Forms 사용 System.Runtime.InteropServices를 사용 하 여; System.스레딩 사용; 네임스페이스 PInvoke_DllImport_Cs { 공용 부분 클래스 양식1 : 양식 { 공용 양식1() { 초기화 구성 요소(); } CONST 마우스EVENTF_LEFTDOWN = 0x0002; CONst uint MOUSEEVENTF_LEFTUP = 0x0004; [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); } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } } System.Windows.Forms 선언 자동 하위 마우스_event Lib “user32” (ByVal dwFlags as Int32, ByVal dx as Int32, ByVal dy as Int32, ByVal dwExtraInfo as IntPtr) Const MOUSEEVENTF_MOVE INt32로 MOUSEEVENTF_LEFTDOWN 로 마우스레프트왼쪽 버튼 다운 Const32 = & H4 ` 왼쪽 버튼 위로 Const MOUSEEVENTF_Rightdown Int32 = & H8 ` 오른쪽 버튼 다운 ConstMOUSEEVENTF_RightUP 로 Int32 = & H10 ` 오른쪽 버튼 으로 CONST MOUSEEVENTF_MIDDLE Int32 = & H20 ` 중간 버튼 아래로 Const MOUSEEVENTF_MIDDLEUP 로 Int32 = & H40 ` 중간 버튼 최대 Const MOUSEEVENTF_Absolute Int32 = & H8000 ` 절대 이동 Const MOUSEEVENTF_WHEEL Int32 = & H800 ` 휠 버튼 롤링 ` 시뮬레이션 이동

No Comments

Sorry, the comment form is closed at this time.