2017-03-02 5 views
0

Aus irgendeinem Grund wird der vertikale Separator nicht erweitert. Das ist, was ich tat:Warum wird dieser ttk.Separator nicht ordnungsgemäß erweitert?

from Tkinter import * 
from ttk import Separator 

root = Tk() 

Label(root, text='Apples').grid(column=0, row=0) 
Label(root, text='Oranges').grid(column=2, row=0) 
Label(root, text='Pears').grid(column=4, row=0) 
Label(root, text='Cherries').grid(column=0, row=2) 
Label(root, text='Avocados').grid(column=2, row=2) 
Label(root, text='Bananas').grid(column=4, row=2) 
Separator(root, orient=HORIZONTAL).grid(row=1, columnspan=10, sticky=(W,E)) 
Separator(root, orient=VERTICAL).grid(column=1, rowspan=3, sticky=(S,N)) 

mainloop() 

Dies ist das Ergebnis:

Separator

Wie Sie in der unteren linken Seite des Fensters sehen können, die vertikalen Trenn wie eine kleine Zeile erscheinen. Wie erweitere ich es mit der Methode .grid()?

Bonus Frage: Was wäre der richtige Weg, um ein zweites vertikales Trennzeichen auf der dritten Spalte hinzuzufügen?

Antwort

2

Wenn Sie rowspan angeben, bedeutet dies, dass das Widget seine Zeile und alle Zeilen unter es umfasst. Weil du nicht eine Zeile, war der Separator in Reihe 3.

Um dies zu beheben angegeben haben, geben Sie die Zeile 0:

Separator(root, orient=VERTICAL).grid(row = 0, column=1, rowspan=3, sticky=(S,N)) 

Wie für die Bonus-Frage, fügen Sie einen anderen Separator, wie Sie das tat zuerst.

Separator(root, orient=VERTICAL).grid(row = 0, column=3, rowspan=3, sticky=(S,N)) 
+0

Ja, das hat funktioniert. – Deneb

Verwandte Themen