Seite 1 von 1

Widget Position ändern

Verfasst: Freitag 26. März 2004, 17:53
von MacEvil
Wie kann ich die Position eines Widget im Nachinein ändern ?

Code: Alles auswählen

# so im Stil von
e = Entry(root, width=10, text='').place(x=100,y=100)
e.place(x=150,y=100)
# geht natürlich nicht

Verfasst: Samstag 27. März 2004, 01:08
von wuf
Hallo MacEvil

Hier ist etwas zum ausprobieren.

Code: Alles auswählen

from Tkinter import*

root = Tk()
root.configure(width=300,height=300,bg='steelblue3')

e = Entry(root, width=10, text='')
e.propagate(0)
e.place(x=150,y=100)

root.mainloop()
Gruss wuf :wink:

Verfasst: Samstag 27. März 2004, 08:18
von MacEvil
Danke wuf :wink:

Verfasst: Samstag 27. März 2004, 08:52
von Milan
Hi. Möglich dürfte auch das hier sein:

Code: Alles auswählen

e = Entry(root, width=10, text='') 
e.place_forget() # gibts auch für packer und grider
e.place(x=150,y=100)
Milan

Verfasst: Samstag 27. März 2004, 11:04
von wuf
Hi Milan

Danke für die Vorstellung der für mich noch neuen unbekannten
(undocumented) Methode w.place_forget(). Ich hab sie nach durch-
stöbern von Tkinter.py gefunden.

Beim durchstöbern habe ich auch noch die Methode w.place_info
gefunden, welche Informationen über den aktuelle place-Zustand
des Widgets w zurückgibt. Ich stellte fest, dass nach einer Neu-
platzierung des Widgets mit place die informationen für x und y
damit sofort verfügbar sind ohne zuerst die Methode update_idletasks()
aufrufen zu müssen

Gruss wuf :wink:

Verfasst: Samstag 27. März 2004, 11:30
von Milan
Hi. Also die Tkinter Methoden sind vielleicht nicht gearde jedem bekannt, aber sie sind nicht undokumentiert. Gerade place_forget, grid_forget und pack_forget sind eigentlich in jedem Buch über Python/Tkinter zu finden, da sie gearde für sowas gemacht sind. Ob sie allerdings auch außerhalb der Bücherwelt zu finden sind weiß ich nicht.
Ich kann da nur wieder mal pydoc Beziehungsweise pydoc -g empfhelen, wie ich es immer am laufen hab, wenn ich progge. Da behälst du auch bei viel Quelltext noch den Überblick.

Milan

Verfasst: Samstag 27. März 2004, 13:42
von wuf
OK Milan ich nehme mein 'undocumented' wieder zurück. In meinen
Bücher ist das nicht so offensichtlich aufgeführt, da es nicht
Bücher sind die sich ausschliesslich nur mit Tkinter alleine beschäftigen.
Ausdrücke wie grid_forget und pack_forget habe ich in einer Pdf-
Dokumentation gefunden und machen auch einen Sinn. Der Ausdruck place_forget
um eine Möglichkeit mit place zu arbeiten ist vielleicht eine unglückliche
Bezeichnung für das wo sie bewirken sollte. Ich wäre auch mit pydoc
nicht auf die Idee gekommen nach diesem Ausdruck zu suchen.

Gruss wuf :wink: