2017-03-02 92 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