tkinter在复选按钮之间放置了太多的空间

2024-09-30 08:30:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我不知道怎么让tkinter把复选按钮和单选按钮放得更近。指定any0的pady=place似乎没有效果。按钮之间的垂直距离非常大,很难看,只会浪费空间。为了使一组按钮显示为一个独立于其他控件的组,我需要在其他地方添加额外的空间,这就失去了控制。在

以下是我提取的一个有效示例:

from Tkinter import *

def rbtest(frame):
    group = LabelFrame( frame, text="Target", padx=0, pady=0)

    btnVal = StringVar(frame,' ')
    for b in ( "option1", "another option", "Someth Else", "go away"):
        rb=Radiobutton( group, text=b, value=b, variable=btnVal)
        rb.pack( anchor=W, pady=2)

    boardname = StringVar()
    Label( group, text="Name").pack( anchor=W)
    Entry( group, text=boardname).pack()

    group.pack( side=LEFT, fill=Y, padx=0, pady=0)

tk = Tk()
rbtest(tk)
tk.mainloop()

[好吧,我不能发布一张图片来展示它所生产的产品,因为我没有足够的声誉,对此我深表歉意。。。我试过了。]

编辑:我使用的是Python2.6.6和Windows7。在

我很惊讶的发现,所有其他的元素在一起的时候,我都很惊讶。。。在


Tags: textgroup空间按钮framepacktkanchor
2条回答

我在Mac和windows上运行了你的代码,在这两种情况下我都觉得很合适。如果您希望它们尽可能接近,请将borderwidth设置为零,pady选项设置为零。在

要想在每个按钮之间找出另外两个像素,请将highlightthickness设置为零,尽管这会影响用户在使用键盘遍历时的体验。在

我觉得很正常:

screenshot of window

如果它真的需要做的超级紧凑,有办法这样做,但我怀疑你的系统渲染窗口不同。在

相关问题 更多 >

    热门问题