[VB.NET] Mausklickkoordinaten systemweit abfragen

Masterclavat

Erfahrenes Mitglied
Hallo, :)

ich bin gerade dabei mir ein kleines Programm zu schreiben, das nur aus einer Textbox besteht. Die Form ist genau so groß, wie die Textbox, und hat den BorderStyle None, also keine Titelleiste und keinen Rand.

Ich möchte, dass wenn man in diese Textbox zum Beispiel "Position" eingibt und Enter drückt, die Form beim nächsten Mausklick, auf einen Punkt auf dem Bildschirm, dort hin springt.
Ist alles kein Problem, bis auf den Mausklick (und Koordinaten), der abgefragt werden soll.
Google spuckte mir nur Beispiele zu VB4/5/6 aus und auch die Boardsuche blieb erfolglos.

Gibt es etwas, was man da machen kann?

MfG
 
Hallo, hier ein Beispiel für die Koordinaten.
Code:
Public Class Form1
    Private Declare Function GetAsyncKeyState _
    Lib "user32" (ByVal vKey As Integer) As Integer

    Private Const VK_LBUTTON = &H1
    Private Const VK_RBUTTON = &H2
    Private Const VK_MBUTTON = &H4

    Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        If GetAsyncKeyState(VK_LBUTTON) Then
            Label1.Text = "Linke Taste: X" & MousePosition.X & ", Y" & MousePosition.Y
        ElseIf GetAsyncKeyState(VK_RBUTTON) Then
            Label1.Text = "Rechte Taste: X" & MousePosition.X & ", Y" & MousePosition.Y
        ElseIf GetAsyncKeyState(VK_MBUTTON) Then
            Label1.Text = "Mittlere Taste: X" & MousePosition.X & ", Y" & MousePosition.Y
        Else
            Label1.Text = ""
        End If
    End Sub

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Me.TopMost = True
        Call GetAsyncKeyState(VK_LBUTTON)
        Label1.Text = ""
        Timer1.Interval = 100
        Timer1.Start()
    End Sub

End Class
 

Neue Beiträge

Zurück