由于某种原因,垂直分隔符不会扩展。这就是我所做的:
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()
结果如下:
正如您在窗口左下方看到的那样,垂直分隔符看起来像一条小线。如何使用.grid()
方法展开它?
奖金问题:在第3列添加第二个垂直分隔符的正确方法是什么?
答案 0 :(得分:2)
当您指定rowspan
时,表示小部件将跨越其行以及下面的任何行。因为您没有指定行,所以分隔符位于第3行。
要解决此问题,请指定第0行:
Separator(root, orient=VERTICAL).grid(row = 0, column=1, rowspan=3, sticky=(S,N))
至于奖金问题,您按照第一个分隔符的方式添加另一个分隔符。
Separator(root, orient=VERTICAL).grid(row = 0, column=3, rowspan=3, sticky=(S,N))