Seite 1 von 1

seltsame werte!

Verfasst: Samstag 9. April 2005, 09:38
von Gast
hallo,

ich muss die breite, höhe und position eines fensters abfragen, nun habe ich mir folgendes aus dem forum hier zusammengereimt:

Code: Alles auswählen

#!/usr/bin/env python


from Tkinter import *

root=Tk()
root.wm_geometry('450x550+20+20')
root.update()
print root.winfo_geometry()
root.mainloop()
die ausgabe ist allerdings seltsam

450x550+24+41

jmd eine idee warum?

mfg

rolgal

Verfasst: Samstag 9. April 2005, 10:30
von Mr_Snede
Habe es auch mal ausprobiert, bei mir sieht es auch nicht anders aus: 450x550+23+37

Mein System: debian sarge

Kommt es vielleicht darauf an, wohin der Windowmanager das nun wirklich plaziert. Bei icewm kann man glaube ich soetwas wie "Abstand zum Monitor Rand" definieren - kann mich aber irren.
Vielleicht sollte das einer mal auf Windows probieren.

Ich habe bei meinen Übungen (mit Tkinter) auch meine Probleme mit den Positionsangaben gehabt und verzichte drauf (auf die Positionsangaben).

cu Sebastian

Verfasst: Samstag 9. April 2005, 18:09
von mawe
Hi!

Diese "seltsamen" Werte kommen vom Rahmen, und der ist ja bei jedem Windowmanager (und auch bei jedem Theme) anders. Die geometry Angaben die man setzen kann beziehen sich nur auf den Bereich innerhalb dieses Rahmens.

Gruß, mawe

Verfasst: Samstag 9. April 2005, 21:43
von Leonidas
Seltsam, dass man zwar sagen kann, dass der Inhalt des Fensters so und so groß ist (ist ja logisch, wie groß der Rahmen ist, sollte meist der WM entscheiden), aber mit winfo_geometry() nicht diesen Wert zurückbekommt, den man gesetzt hat, sondern die Größe des ganzen Fensters.