2017-03-02 88 views
0

由於某些原因,垂直分隔符不擴展。這是我做過什麼:爲什麼ttk.Separator不能正確擴展?

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() 

這是結果:

Separator

正如你可以在窗口的左下角看到,垂直分離器看起來像一個小行。如何使用.grid()方法擴展它?

獎金問題:在第3列添加第二個垂直分隔符的正確方法是什麼?

回答

2

當您指定rowspan時,這意味着小部件將跨越其行,並且它的任何行都低於它。因爲你沒有指定一個排,用間隔3行

爲了解決這個問題,指定行0:

​​

至於獎金問題,你再添分離你做的方式第一。

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

是的,工作。 – Deneb