Hallo liebe Phyton Community,
ich beschäftige mich zwar ab und an mit coden jedoch im Vergleich zu den meisten hier ist mein Wissen = 0.01
Weswegen ich hier diesen Thread aufgemacht habe, ist weil ich jemand suche der ein wenig Zeit für mich hat um mir bei meinem Problem zu Helfen und dieses "Tool" welches ich im Kopf habe zu realisieren, es ist denke ich kein wirklich großer Aufwand für jemand mit Fachkenntnissen.
Zum Thema:
Ich hätte gerne ein "Tool" welches mit zwei Desktops arbeitet, und hierbei jeden Mausklick auf den "Main" Desktop jeweils auf den erweiterten Desktop clont oder projiziert.
Für genaueres könnte man sich ja dann per Pn oder evtl. Skype unterhalten.
Mfg Towo
Klein-Projekt sucht Coder :)
- Sr4l
- User
- Beiträge: 1091
- Registriert: Donnerstag 28. Dezember 2006, 20:02
- Wohnort: Kassel
- Kontaktdaten:
Wo hast du gesucht? Ich finde keinen Suchbegriff der mich nicht auf diese Seite bringt.
http://de.autohotkey.com/
http://de.autohotkey.com/
Hab eben nach einem anderen Titel gesucht^^ wobei ich aus der Seite auch nicht viel schlauer werde... vieleicht gibt es ja jemand der es auch für möglich hält mit Phython oder sonstigem auch so ein Tool zu bastel "ohne" autohotkey.
Ich befürchte einfach, dass Python für dein Projekt einfach weniger geeignet ist. Klar kann man mit pywin32 oder so sicher die aktuelle Mausposition abfragen und Mausklicks simulieren, aber virtuelle Desktops? Erzähl doch mehr über das zu lösende Problem um klarere Antworten und Einschätzungen zu bekommen (denn ehrlich gesagt befürchte ich, dass dir einfach eine viel zu umständliche Lösung vorschwebt).
Ok um es Konkreter zu machen, mal ganz in umgangsform....
Ich habe 2 Bildschirme, welche miteinander verbunden sind, (erweiterter desktop).
Ich brauch nun ein programm welches (um es an einem beispiel festzumachen) wenn ich auf beiden Bildschirmen z.B. Paint offen habe und auf dem Hauptmonitor nun durch klicken einen punkt in die mitte setze, das auch auf dem 2ten monitor dieser punkt durch klick gemacht wird. (ich hoffe es ist verständlich)
das programm soll theoretisch die koordinaten von monitor 1 mit monitor 2 verknüpfen so das, bei klick auf koordinate xyz von monitor 1 automatisch die dazugehörige koordinate xyz auf monitor 2 geklickt wird.
Ich habe 2 Bildschirme, welche miteinander verbunden sind, (erweiterter desktop).
Ich brauch nun ein programm welches (um es an einem beispiel festzumachen) wenn ich auf beiden Bildschirmen z.B. Paint offen habe und auf dem Hauptmonitor nun durch klicken einen punkt in die mitte setze, das auch auf dem 2ten monitor dieser punkt durch klick gemacht wird. (ich hoffe es ist verständlich)
das programm soll theoretisch die koordinaten von monitor 1 mit monitor 2 verknüpfen so das, bei klick auf koordinate xyz von monitor 1 automatisch die dazugehörige koordinate xyz auf monitor 2 geklickt wird.
- Sr4l
- User
- Beiträge: 1091
- Registriert: Donnerstag 28. Dezember 2006, 20:02
- Wohnort: Kassel
- Kontaktdaten:
Das Problem ist nur das Windows nur mit einem Mauszeiger umgehen kann. Eine Maus kann also nur an einem Ort gleichzeitig sein.
Man kann also auf einen Mausklick die Position ermitteln, um einen Offset verschieben, dort einen klick auslösen und wieder auf Ausgangsposition gehen.
Jetzt kommt das aber: Was macht man wenn man klickt, die Maus bewegt, los lässt. Dann muss man Anfangen den Pfad zu speichern. Außerdem ist es je nach Anwendung nötig die Anweisungen auszubremsen weil man sonst zu schnell ist.
Man kann also auf einen Mausklick die Position ermitteln, um einen Offset verschieben, dort einen klick auslösen und wieder auf Ausgangsposition gehen.
Jetzt kommt das aber: Was macht man wenn man klickt, die Maus bewegt, los lässt. Dann muss man Anfangen den Pfad zu speichern. Außerdem ist es je nach Anwendung nötig die Anweisungen auszubremsen weil man sonst zu schnell ist.
- Sr4l
- User
- Beiträge: 1091
- Registriert: Donnerstag 28. Dezember 2006, 20:02
- Wohnort: Kassel
- Kontaktdaten:
Ich habe es gerade mal ausprobiert. Ich habe mich noch nie mit ctypes beschäftigt, aber ich habe vor einiger Zeit mal mit Windows in C rum gespielt und es lässt sich eigentlich 1:1 übersetzen.webspider hat geschrieben:Ich befürchte einfach, dass Python für dein Projekt einfach weniger geeignet ist. Klar kann man mit pywin32 oder so sicher die aktuelle Mausposition abfragen und Mausklicks simulieren, aber virtuelle Desktops? Erzähl doch mehr über das zu lösende Problem um klarere Antworten und Einschätzungen zu bekommen (denn ehrlich gesagt befürchte ich, dass dir einfach eine viel zu umständliche Lösung vorschwebt).
Code: Alles auswählen
In [1]: import ctypes
In [2]: ctypes.windll.user32.SetCursorPos(200, 100)
Out[2]: 1
In [3]: ctypes.windll.user32.mouse_event(0x0002+0x0004, 0, 0, 0, 0) #LEFT down/up
Out[3]: 1
In [4]:
- Sr4l
- User
- Beiträge: 1091
- Registriert: Donnerstag 28. Dezember 2006, 20:02
- Wohnort: Kassel
- Kontaktdaten:
Code: Alles auswählen
In [74]: class POINT(ctypes.Structure):
...: _fields_ = [("x", ctypes.c_long), ("y", ctypes.c_long)]
...:
In [76]: p = POINT()
In [77]: ctypes.windll.user32.GetCursorPos(ctypes.byref(p))
Out[77]: 1
In [78]: p.x
Out[78]: 414
In [79]: p.y
Out[79]: 513
Code: Alles auswählen
In [125]: while ctypes.windll.user32.GetAsyncKeyState(0x41) == 0:
...: pass
...: else:
...: print "Taste A gedrueckt"
...:
Taste A gedrueckt
... hab deinen text zu 0% verstanden^^ musst davon ausgehen das ich von python nicht wirklich viel plan habe aber habs grade mal mit Ahk gemacht nur hier ist das problem aufgetreten, dass das programm nur direct input registriert und keine virtuell clicks oder keys wahrnimmt -.-