Tkinter: Position eines Button in einem Fenster in Abhängigkeit der Fenstergröße anpassen
Verfasst: Samstag 21. April 2018, 11:19
Hallo zusammen,
kann mir einer bei folgendem helfen?
Ich möchte ein Button in einem Fenster in Abhängigkeit der Fenstergröße positionieren.
Wird also das Fenster mit der Maus vergrößert oder verkleinert, dann soll sich die Position des Buttons entsprechend ändern.
#Fenster generieren
Fenster = Tk()
Fenster.title("Test")
Fenster.geometry("250x250")
#Button erzeugen mit Ausgangsposition
Button_1 = Button(Fenster,text="Drücken")
Button_1.place(x=125,y=125)
#Auf die Skalierung des Fensters mit einem Event reagieren
Fenster.bind("<Configure>", Position)
#Funktion für das Anpassen der Position des Buttons
def Position(event):
fw = int(event.width)
fh = int(event.height)
Button_1.place(x=fw/2,y=fh/2)
#Loop
Fenster.mainloop()
Leider funktioniert der obige Code nicht. Button bleibt immer an der Ausgangsposition.
ich vermute mal, dass der Befehl Button_1.place(x=fw/2,y=fh/2) in der Funktion an dieser Stelle falsch ist.
Vielleicht brauche ich hier zum Aktualisieren der Position des Buttons im Fenster einen anderen Befehl.
Kann mir jemand helfen. Ich habe es vor kurzem mit der Oberflächenprogrammierung (über Tkinter) angefangen.
Viele Grüße
Armend
kann mir einer bei folgendem helfen?
Ich möchte ein Button in einem Fenster in Abhängigkeit der Fenstergröße positionieren.
Wird also das Fenster mit der Maus vergrößert oder verkleinert, dann soll sich die Position des Buttons entsprechend ändern.
#Fenster generieren
Fenster = Tk()
Fenster.title("Test")
Fenster.geometry("250x250")
#Button erzeugen mit Ausgangsposition
Button_1 = Button(Fenster,text="Drücken")
Button_1.place(x=125,y=125)
#Auf die Skalierung des Fensters mit einem Event reagieren
Fenster.bind("<Configure>", Position)
#Funktion für das Anpassen der Position des Buttons
def Position(event):
fw = int(event.width)
fh = int(event.height)
Button_1.place(x=fw/2,y=fh/2)
#Loop
Fenster.mainloop()
Leider funktioniert der obige Code nicht. Button bleibt immer an der Ausgangsposition.
ich vermute mal, dass der Befehl Button_1.place(x=fw/2,y=fh/2) in der Funktion an dieser Stelle falsch ist.
Vielleicht brauche ich hier zum Aktualisieren der Position des Buttons im Fenster einen anderen Befehl.
Kann mir jemand helfen. Ich habe es vor kurzem mit der Oberflächenprogrammierung (über Tkinter) angefangen.
Viele Grüße
Armend