Isma Tipu Ответов: 2

Генерировать щелчок мыши в C# без использования мыши


Я установил курсор мыши на определенную координату в своем приложении формы c#, но я не знаю, как сгенерировать клик по ней.Я хочу нажать на конкретную координату без использования мыши.

Что я уже пробовал:

Я не знаю, как это сделать в c# , там нет встроенного fn

phil.o

Вместо того чтобы генерировать щелчок мыши, которого не существует, почему бы просто не выполнить обработчик событий, который должен был быть выполнен, если бы щелчок мыши произошел в этом месте?

Isma Tipu

Я использую голос, так что, например, если я скажу "клик", Я хочу сгенерировать клик на этом ! вот почему я сказал, что не могу использовать мышь

2 Ответов

Рейтинг:
2

#realJSOP

Вам нужно использовать службы взаимодействия. Это должно помочь вам начать:

используя системы.Во время выполнения.InteropServices;

llImport("user32.dll")]
static extern void mouse_event(int dwFlags, int dx, int dy, 
                      int dwData, int dwExtraInfo);

[Flags]
public enum MouseEventFlags
{
    LEFTDOWN = 0x00000002,
    LEFTUP = 0x00000004,
    MIDDLEDOWN = 0x00000020,
    MIDDLEUP = 0x00000040,
    MOVE = 0x00000001,
    ABSOLUTE = 0x00008000,
    RIGHTDOWN = 0x00000008,
    RIGHTUP = 0x00000010
}

public static void LeftClick(int x, int y)
{
    Cursor.Position = new System.Drawing.Point(x, y);
    mouse_event((int)(MouseEventFlags.LEFTDOWN), 0, 0, 0, 0);
    mouse_event((int)(MouseEventFlags.LEFTUP), 0, 0, 0, 0);
}


Рейтинг:
1