Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1804to1808
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Sendkeys, aber Mouseclick senden

Sendkeys, aber Mouseclick senden
19.01.2021 08:37:29
Klaus
Hallo VBAler,
hier habe ich ein Programm im Herber Archiv gefunden:
https://www.herber.de/mailing/Auslesen_der_aktuellen_Mausposition.htm
Daher weiss ich, dass das Icon meiner Begierde (in einem nicht-Excel Fenster) auf Maus Pos 500,150 liegt. Kann ich dorthin einen "Mausclick left" schicken, ähnlich wie ein Sendkeys?
LG,
Klaus

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sendkeys, aber Mouseclick senden
19.01.2021 09:42:07
Nepumuk
Hallo Klaus,
so:
Option Explicit

Private Declare PtrSafe Sub mouse_event Lib "user32.dll" ( _
    ByVal dwFlags As Long, _
    ByVal dx As Long, _
    ByVal dy As Long, _
    ByVal cButtons As Long, _
    ByVal dwExtraInfo As LongPtr)
Private Declare PtrSafe Function SetCursorPos Lib "user32.dll" ( _
    ByVal X As Long, _
    ByVal Y As Long) As Long

Private Const MOUSEEVENT_LEFTDOWN As Long = &H2
Private Const MOUSEEVENT_LEFTUP As Long = &H4

Public Sub Test()
    Call MouseClick(500, 150)
End Sub

Private Sub MouseClick(ByVal pvlngXPos As Long, ByVal pvlngYPos As Long)
    Call SetCursorPos(pvlngXPos, pvlngYPos)
    Call mouse_event(MOUSEEVENT_LEFTDOWN, 0&, 0&, 0&, 0)
    Call mouse_event(MOUSEEVENT_LEFTUP, 0&, 0&, 0&, 0)
End Sub

Gruß
Nepumuk
Anzeige
AW: Sendkeys, aber Mouseclick senden
19.01.2021 11:35:04
volti
Hallo Max,
mal 'ne Frage am Rande dazu:
Ich mache das ja schon immer so, hatte aber vor Jahren bei meinen ersten Versuchen mal gedacht, das müsse doch auch so gehen:
mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP Or MOUSEEVENTF_ABSOLUTE, 500, 150, 0, 0
Da ja die 3. und 4. Parameter dx und dy bei der Beschreibung in MSDN als Mausposition angegeben werden.
Irgendeine Ahnung, wo da mein Gedankenfehler ist oder funktioniert das einfach nur nicht.
Gruß
KH
AW: Sendkeys, aber Mouseclick senden
19.01.2021 12:25:38
Nepumuk
Hallo Karl-Heinz,
ich habe auch schon damit herumprobiert und bin zu keinem zufriedenstellenden Ergebnis gekommen. ich kann zwar per:
mouse_event MOUSEEVENTF_ABSOLUTE Or MOUSEEVENTF_MOVE, x, y, 0, GetMessageExtraInfo()
eine Bewegung der Maus erzeugen, aber nicht zielgerichtet.
Gruß
Nepumuk
Anzeige
AW: Sendkeys, aber Mouseclick senden
19.01.2021 13:03:28
volti
Danke für die Info.
Ich hatte das MOUSEEVENTF_MOVE vergessen. :-(
Aber trotz Angabe von MOUSEEVENTF_ABSOLUTE verschiebt sich der Mauscursor immer nur relativ.
Da werden wir dann wohl weiterhin bei der vorhergehenden SetCursorPos bleiben müssen.
VG KH
AW: Sendkeys, aber Mouseclick senden
19.01.2021 09:44:52
volti
Hallo Klaus,
teste mal folgendes Makro.
PS: Bitte bedenken, dass der Mausklick immer an das Vordergrundfenster geht. Dieses musst Du ggf. vorher aktivieren. Habe ich jetzt nicht mitgemacht.
Code:
[Cc]

Private Declare PtrSafe Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long Private Declare PtrSafe Sub mouse_event Lib "user32" (ByVal dwFlags As Long, _ ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As LongPtr) Private Const MOUSEEVENTF_LEFTDOWN = &H2 ' left button down Private Const MOUSEEVENTF_LEFTUP = &H4 ' left button up Sub MausKlick() SetCursorPos 500, 150 'Position setzen mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0 End Sub

_________________________
viele Grüße aus Freigericht 😊
Karl-Heinz

Anzeige
Danke Volti und Nepumuk ....
19.01.2021 12:14:10
Klaus
.... ich werde heute oder morgen nachmittag testen können und melde mich dann wieder.
Lg,
Klaus
AW: Danke Volti und Nepumuk ....
19.01.2021 12:55:14
Klaus
YES, es funktioniert! Richtig geil. Danke euch - damit kann ich jetzt ganz viel Unsinn anstellen :-)
AW: Danke Volti und Nepumuk ....
19.01.2021 13:35:17
volti
Pass aber auf, dass Du nicht wegen sich reinschiebender Fenster auf ein falsches Item klickst und so Spaß bekommen kannst. hihi.
Viele Erfolg damit
KH
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge