Hallo.
da ich momentan schwer am python üben bin, hab ich mir folgende Aufgabe gestellt. Ich möchte ein kleines Tool schreiben welches jeden Mausklick mit Zeit und Anwendung in einem XML File speichert.
Kann mir jemand nützliche Literatur bzw Links geben?
Mausklicks aufzeichnen. Wer kennt Quellen?
Das dürfte sehr betriebssystemabhängig sein. Unter Linux/Unix müsste man sich wahrscheinlich mit dem X-Server auseinandersetzen. Dazu gibt's eine Anbindung: http://python-xlib.sourceforge.net/
XML ist kein gutes Format für "Logdateien", weil man nicht einfach Datensätze anhängen kann. Für so einfache Datensätze ist eine CSV-Datei das einfachste Format.
XML ist kein gutes Format für "Logdateien", weil man nicht einfach Datensätze anhängen kann. Für so einfache Datensätze ist eine CSV-Datei das einfachste Format.
Bei MacOS ist der X-Server aber optional oder? Ich weiss jedenfalls aus der StarOffice-Newsgroup, dass Mac-Benutzer immer jammern das SO nur unter X läuft und das Sch**e aussähe.
- birkenfeld
- Python-Forum Veteran
- Beiträge: 1603
- Registriert: Montag 20. März 2006, 15:29
- Wohnort: Die aufstrebende Universitätsstadt bei München
Jaja, ob bzw. wie es funktioniert, ist auf dem Mac eher Nebensache...
-
- User
- Beiträge: 51
- Registriert: Montag 16. April 2007, 10:59
- Wohnort: Messel(Hessen)
- Kontaktdaten:
Eine Frage an die Experten.
Könnte es mit dem OpenGL Modul gehen sofern ein OpenGL Driver installiert ist? Zumindest könnte ich dann schonmal die Anzahl der Events zählen lassen. Für Direct3D wird es wohl kein Modul geben das es nicht OpenSource ist.
http://pyopengl.sourceforge.net/pydoc/O ... vents.html
Könnte es mit dem OpenGL Modul gehen sofern ein OpenGL Driver installiert ist? Zumindest könnte ich dann schonmal die Anzahl der Events zählen lassen. Für Direct3D wird es wohl kein Modul geben das es nicht OpenSource ist.
http://pyopengl.sourceforge.net/pydoc/O ... vents.html
Falls es mit OpenGL geht, dann wäre das sehr indirekt, da OpenGL keine Maus kennt, im Grunde nicht einmal eine Grafik*anzeige*. Ich hatte das so verstanden, dass Du diese Mausereignisse global aufzeichnen willst, also nicht auf ein Fenster Deiner Anwendung beschränkt!?
-
- User
- Beiträge: 51
- Registriert: Montag 16. April 2007, 10:59
- Wohnort: Messel(Hessen)
- Kontaktdaten:
Ja die Events sollen global über das ganze OS aufgezeichnet werden. OpenGL wird leider nur von wenigen Programmen genutzt insofern fällt das schon unter den Tisch und meine obige Anmerkung wird wertlos.
Unter Windows ist soetwas wohl nur mit VB machbar, jedenfalls erhält man keinerlei Hinweise im Web zu vorhandenen Schnittstellen.
Aber auch für Linux , wo es doch eigentlich über gtk machbar sein sollte, finden sich 0 Anwendungsbeispiele bzw Hinweise.
Offen gestanden bin ich etwas ratlos ob sich soetwas überhaupt umsetzen läßt.
Unter Windows ist soetwas wohl nur mit VB machbar, jedenfalls erhält man keinerlei Hinweise im Web zu vorhandenen Schnittstellen.
Aber auch für Linux , wo es doch eigentlich über gtk machbar sein sollte, finden sich 0 Anwendungsbeispiele bzw Hinweise.
Offen gestanden bin ich etwas ratlos ob sich soetwas überhaupt umsetzen läßt.
Die xlib-Anbindung von Python ist ziemlich Low-Level, da sollte also fast alles machbar sein, was auch mit C geht. Vielleicht lohnt sind ein Blick in den Quelltext von grafischen Spielereien wie die Augen, die immer in Richtung Mauszeiger schauen.
http://en.wikipedia.org/wiki/Xeyes
http://en.wikipedia.org/wiki/Xeyes
Nein, man kann auch mit Python unter Windows arbeiten. Dazu benötigt man pywin32 und muss sich dann mit Kooking beschäftigen... Damit kann man unter Windows globale Event-Handler für alles mögliche installieren. Genaueres kann ich dir allerdings nicht sagen, ich hab immer versucht die Windows API nach Möglichkeit zu meidenhtw7448 hat geschrieben:Unter Windows ist soetwas wohl nur mit VB machbar, jedenfalls erhält man keinerlei Hinweise im Web zu vorhandenen Schnittstellen.
Das ist keine GTK Sache, da die Maus unabhängig vom verwendeten Toolkit ist. Sie wird über den X Server gesteuert (genau wie die Schriftarten).Aber auch für Linux , wo es doch eigentlich über gtk machbar sein sollte, finden sich 0 Anwendungsbeispiele bzw Hinweise.
Deswegen solltest du dich von einem spezifischen Toolkit wegbewegen und dich mit der X Lib beschäftigen.