Seite 1 von 1
aktuellen Fenstertitel auslesen
Verfasst: Dienstag 22. Januar 2008, 17:35
von draci
Hi Forum!
Ich möchte den Titel des Aktuellen Fensters (momentan im Fokus) auslesen.
(Ich meine ein fremdes Fenster ! )
Weiß jemand wie ichb das möglichst einfach mit Python machen kann?
draci
Verfasst: Dienstag 22. Januar 2008, 18:07
von DER Olf
Ja, ist sogar ziemlich einfach.
Wie gut kennst du dich mit win32 Programmierung aus?
Auf codeproject.com findest du einige Beispiele wie man sowas macht.
(manko: sind fast alle in C++, seltener C, manchmal auch C#)
Du brauchst auf jeden Fall die win32 extentions für Python.
gruß, olf
Edit: Natürlich vorrausgesetzt, du benutzt Windows. Ansonsten wirst du (unter Linux/UNIX) auf die XLib zurückgreifen müssen.
Falls du doch windows verwendest brauchst du folgende Funktionen:
win32gui.GetCursorPos
win32gui.WindowFromPoint
win32gui.GetWindowText
Viel Erfolg
Verfasst: Dienstag 22. Januar 2008, 19:26
von fred.reichbier
Mit welchem Desktop denn? Für Gnome kannst du dafür wnck verwenden.
Verfasst: Dienstag 22. Januar 2008, 19:31
von Python 47
Verfasst: Dienstag 22. Januar 2008, 19:33
von Hyperion
Wenn man mit einem Toolkit programmiert, bietet dieses idR Funktionen dafür an (a la getTitle() o.ä.)! Evtl. wollte er darauf hinaus?
Verfasst: Mittwoch 23. Januar 2008, 16:46
von DER Olf
Hyperion hat geschrieben:Wenn man mit einem Toolkit programmiert, bietet dieses idR Funktionen dafür an (a la getTitle() o.ä.)! Evtl. wollte er darauf hinaus?
Korrekt lesen
Ich möchte den Titel des Aktuellen Fensters (momentan im Fokus) auslesen.
(Ich meine ein fremdes Fenster ! )
in der Regel kommst mit einem Toolkit bei fremden Fensters nich soo weit, wobei ich mir vorstellen kann, dass wxWidgets da einiges Anbieten kann und schon "weiter" ins System eindringen kann, d.h. die Adresse oder ID eines beliebigen Fensters (aus einem fremden Prozess) erhalten. Dazu bietet bspw. die winapi die oben genannten (recht komfortablen) Funktionen.
Verfasst: Donnerstag 24. Januar 2008, 15:34
von mulder
mal so als kurzen einwurf ..
gibt es fuer pywinauto eine annehmbare docu???
Verfasst: Donnerstag 24. Januar 2008, 16:02
von draci
Danke für die Antworten!
Ich verwende Windows XP
aber wenigstens kein Vista
Wenn ich's hin bekomme, poste ich wie's geht!!!
Draci
Verfasst: Donnerstag 24. Januar 2008, 21:55
von DER Olf
langeweile...
Code: Alles auswählen
import win32gui
pt = win32gui.GetCursorPos() # mausposition auf dem screen
hwnd = win32gui.WindowFromPoint(pt) # hol dir das handle des fensters ;)
if hwnd != 0: # gueltig?
title = win32gui.GetWindowText(hwnd) # text holen is ziemlich einfach
print "Handle: 0x%x" % hwnd
print "Titel: %s" % title
das ganze sollte natürlich schon in ner schleife sein oder in nem Timer.
grüße, olf
Verfasst: Samstag 8. März 2008, 16:34
von draci
Sorry, hab nicht mehr dran gedacht
Reichlich spät, aber vielleicht hilft es mal jemandem
Code: Alles auswählen
import win32gui
titel=win32gui.GetWindowText(win32gui.GetForegroundWindow())
Verfasst: Samstag 8. März 2008, 17:29
von birkenfeld
DER Olf hat geschrieben:Dazu bietet bspw. die winapi die oben genannten (recht komfortablen) Funktionen.
Was ist da dran besonders komfortabel?
Verfasst: Samstag 8. März 2008, 17:56
von Leonidas
birkenfeld hat geschrieben:Was ist da dran besonders komfortabel?
Im Gegensatz zum Rest der Win API wird einem da nicht sofort schlecht. Das ist für WinAPI-Verhältnisse komfortabel