Widget Position ändern

Fragen zu Tkinter.
Antworten
MacEvil
User
Beiträge: 52
Registriert: Mittwoch 21. Januar 2004, 21:40

Freitag 26. März 2004, 17:53

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
Möge die Python-Community gedeihen
Benutzeravatar
wuf
User
Beiträge: 1483
Registriert: Sonntag 8. Juni 2003, 09:50

Samstag 27. März 2004, 01:08

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:
Take it easy Mates!
MacEvil
User
Beiträge: 52
Registriert: Mittwoch 21. Januar 2004, 21:40

Samstag 27. März 2004, 08:18

Danke wuf :wink:
Möge die Python-Community gedeihen
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Samstag 27. März 2004, 08:52

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
Benutzeravatar
wuf
User
Beiträge: 1483
Registriert: Sonntag 8. Juni 2003, 09:50

Samstag 27. März 2004, 11:04

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:
Take it easy Mates!
Milan
User
Beiträge: 1078
Registriert: Mittwoch 16. Oktober 2002, 20:52

Samstag 27. März 2004, 11:30

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
Benutzeravatar
wuf
User
Beiträge: 1483
Registriert: Sonntag 8. Juni 2003, 09:50

Samstag 27. März 2004, 13:42

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:
Take it easy Mates!
Antworten