Tkinter GridManager: Buttons in 2-Spalten West und East

Fragen zu Tkinter.
Antworten
droptix
User
Beiträge: 521
Registriert: Donnerstag 13. Oktober 2005, 21:27

Möchte zwei nebeneinander stehende Buttons unter meine Applikation packen. Standardmäßig werden Inhalte beim GridManager immer zentriert:

Bild

Ich möchte aber die Buttons jeweils links und rechts (also West und East) am Fensterrand haben. Der Platz zwischen den Buttons muss also aufgefüllt werden. Wie erreiche ich das? Meine `sticky`-Angaben wirken sich nicht aus, genauso wenig wie meine `width`-Angabe für das Master-Frame. Im folgenden der vereinfachte Code:

Code: Alles auswählen

#-*- coding: iso-8859-1 -*-

import Tkinter

# window
root = Tkinter.Tk()
root.grid()
# master frame
master = Tkinter.Frame(root, width=100)
master.grid()
# buttons
btn1 = Tkinter.Button(master, text="Beenden")
btn1.grid(row=0, column=0, sticky=Tkinter.W)
btn2 = Tkinter.Button(master, text="Start")
btn2.grid(row=0, column=1, sticky=Tkinter.E)
# mainloop
root.mainloop()
Fredi Hartmann
User
Beiträge: 2
Registriert: Sonntag 22. April 2007, 16:02

Code: Alles auswählen

# master frame
master = Tkinter.Frame(root,width=400)
master.grid(sticky=N+W+S+E)
master.winfo_toplevel().columnconfigure(0,weight=1)
master.columnconfigure(0,weight=1)
master.columnconfigure(1,weight=1)
...
droptix
User
Beiträge: 521
Registriert: Donnerstag 13. Oktober 2005, 21:27

Hum, was passiert da? `winfo_toplevel()` und `columnconfigure()` kenn ich gar nicht :D Für das vereinfachte Beispiel klappt das, aber nicht für meine Applikation.
Fredi Hartmann
User
Beiträge: 2
Registriert: Sonntag 22. April 2007, 16:02

http://effbot.org/tkinterbook/grid.htm

Dort ist eigentlich alles nachzulesen was man über Grids wissen muss.
Antworten