Maus bewegen und klicken

  • Mit diesem Snippet könnt ihr mit C# Mauseingaben tätigen.


    [headline]Maus bewegen[/headline]
    Die Maus zu bewegen ist sehr einfach, dazu bietet das .NET Framework eine Klasse.
    [cs]// X = 100; Y = 200
    Cursor.Position = new Point(100, 200);[/cs]


    [headline]Maustasten bedienen[/headline]
    Klicken kann die Cursor-Klasse nicht. Schade eigentlich ...


    Die User32.dll liefert die Funktion "mouse_event":
    [cs][DllImport("user32.dll")]
    static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);[/cs]


    Dazu wird noch ein Enum für die MouseActions benötigt:
    [cs]public enum MouseAction
    {
    LEFTDOWN = 0x00000002,
    LEFTUP = 0x00000004,
    MIDDLEDOWN = 0x00000020,
    MIDDLEUP = 0x00000040,
    MOVE = 0x00000001,
    ABSOLUTE = 0x00008000,
    RIGHTDOWN = 0x00000008,
    RIGHTUP = 0x00000010
    }[/cs]



    Verwendung (Bsp. für Linksklick):
    [cs]// Linke Maustaste drücken
    mouse_event((int)(MouseAction.LEFTDOWN), 0, 0, 0, 0);


    // Linke Maustaste loslassen
    mouse_event((int)(MouseAction.LEFTUP), 0, 0, 0, 0);[/cs]



    Benötigte Namespaces:
    - System.Runtime.InteropServices (DllImport: mouse_event)
    - System.Windows.Forms (Maus bewegen)


    Gruß
    florian0