Mausposition relativ zu einem anderen Fenster
-
Ich habe folgendes Problem:
Ich will ein Programm schreiben, mit dem ich eine Flashanwendung quasi fernsteuern kann. Ich benutze dazu FindWindow(). Jetzt muss ich aber in der Flashanwendung einen Mausklick auslösen. Die Funktionen SetCursorPos() und mouse_event() kenne ich, aber um mit SetCursorPos arbeiten zu können,
müsste ich die Position relativ zu dem Fenster der Flashanwendung angeben können oder die Position des Fensters auslesen können.Weiß von euch jemand, wie man das bewerkstelligen könnte?
-
kann mir niemand weiterhelfen?
Ich muss doch irgendwie die Position dieses anderen Fensters auslesen können?
-
Was genau möchtest Du denn anklicken? Wenn es ein Button ist:
Chistian Marquardt schrieb:
Schau in der Hilfe (WIN 32 API) unter folgenden Themen nach:
WM_LBUTTONDOWN
FindWindow
SendMessageVorgehensweise:
Erst die Anwendung finden (FindWindow)
Alle Unterfenster der Anwendung und deren Titel ermitteln. Für Windows gibt es nur Fenster. Button, Checkboxen, Listen alles sind für Windows Fenster, die nur anders gezeichnet werden. Anhand der Titel (beim Fenster ist es der Titeltext, beim Button ist es der Buttontext) kannst du das Unterfenster finden, welches den Button enthält.
Dann wird Sendmessage an das Hauptfenster gesandt mit dem Unterfenster als Absender.Grüße
-
das ist ja ein Flashfenster, also der Internet Explorer mit einer Flashanwendung darin. Und wo ich in die Flashanwendung klicke ist egal,
hauptsache in das Fenster, das es nicht Fullscreen ist.
-
Dann sende es die Nachricht doch einfach an das Handle des Flash-Fensters.
-
also, das mit SendMessage() funktioniert nicht,
ich glaube da bräuchte ich ein Handle auf die Flashanimation und nicht auf das Fenster.
-
Guck mal die Funktionen ScreenToClient an aus der WinAPI. Bin mir aber nicht sicher ob die dir hilft.
-
Dieser Thread wurde von Moderator/in Jansen aus dem Forum Borland C++ Builder (VCL/CLX) in das Forum WinAPI verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.