Домой Windows Имитация щелчков мыши в C # (mouse_event): Справочник по C#

Имитация щелчков мыши в C # (mouse_event): Справочник по C#

1198
0


      Данный пример демонстрирует как с помощью статического метода «mouse_event» из системной библиотеки «user32.dll», произвести программное перемещение курсора и выполнение двойного клика левой клавишей мыши по новому расположению.
      Создайте проект Windows Form в Microsoft Visual Studio и добавьте в конструкторе главной формы из панели элементов, элемент управления «Button1». Сделайте двойной клик левой клавишей мыши по добавленному компоненту. Вы перейдете в автоматически созданный метод «button1_Click» события «Click». Добавьте в него приведенный ниже код, перемещающий курсор мыши в указанные координаты (X = 30, Y = 30) и выполняющий двойной клик левой клавишей мыши по новому положению.

//Координаты на экране:
int X = 30;
int Y = 30;

//Перемещение курсора на указанные координаты
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_MOVE,
System.Windows.Forms.SystemInformation.PrimaryMonitorSize.Width,
System.Windows.Forms.SystemInformation.PrimaryMonitorSize.Height, X, Y);

//Выполнение первого клика левой клавишей мыши
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);

//Выполнение второго клика левой клавишей мыши
mouse_event(MOUSEEVENTF_ABSOLUTE | MOUSEEVENTF_LEFTDOWN | MOUSEEVENTF_LEFTUP, X, Y, 0, 0);

Добавьте в листинг главной формы константы и статический метод «mouse_event».

[System.Runtime.InteropServices.DllImport("user32.dll",
CharSet = System.Runtime.InteropServices.CharSet.Auto,
CallingConvention =
System.Runtime.InteropServices.CallingConvention.StdCall)]
public static extern void mouse_event(uint dwFlags,
int dx,
int dy,
int dwData,
int dwExtraInfo);

//Нормированные абсолютные координаты
private const int MOUSEEVENTF_ABSOLUTE = 0x8000;

//Нажатие на левую кнопку мыши
private const int MOUSEEVENTF_LEFTDOWN = 0x0002;

//Поднятие левой кнопки мыши
private const int MOUSEEVENTF_LEFTUP = 0x0004;

//перемещение указателя мыши
private const int MOUSEEVENTF_MOVE = 0x0001;

      Для проверки работы данного примера, сверните все открытые приложения вашего компьютера и запустите данный пример. При нажатии на главной форме кнопки «Эмулировать», ваш курсор переместиться в левый верхний угол и выполнит двойной клик левой клавишей мыши. Если вы поместите ярлык «Мой компьютер» в левый верхний угол, то после эмуляции у вас откроется окно проводника Windows.

ЧИТАТЬ ТАКЖЕ:  Получаем модель принтера через SNMP: Справочник по C#

Ссылка для скачивания примера: Rusfolder.net

Имитация щелчков мыши в C # (mouse_event): Справочник по C#

0.00 (0%) 0 votes

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь