Ich erzeuge mit meinem Skript ein Fenster und will anschließend die Geometrie-Daten ausgeben, die das Fenster beim Schliessen hatte:
Code: Alles auswählen
from Xlib.display import Display
from Xlib.Xutil import PPosition, PSize
def create_window(x, y, width, height, window_name, get_geometry=False):
display = Display()
screen = display.screen()
root = screen.root
window = root.create_window(x, y, width, height, 0, screen.root_depth,
background_pixel = screen.white_pixel)
WM_DELETE_WINDOW = display.intern_atom('WM_DELETE_WINDOW')
window.set_wm_name(window_name)
window.set_wm_protocols([WM_DELETE_WINDOW])
window.set_wm_normal_hints(flags=(PPosition|PSize))
window.map()
while True:
event = display.next_event()
data = event.data[1]
if data[0] == WM_DELETE_WINDOW:
if get_geometry == True:
geo = window.get_geometry()
return (geo.x, geo.y, geo.width, geo.height)
else:
return
if __name__ == '__main__':
geo_data = create_window(50, 50, 250, 250,
"I'm a window",
get_geometry=True)
print geo_data
Gruß
Sebastian