【发布时间】:2020-04-09 16:49:34
【问题描述】:
我正在尝试在 tkinter 窗口中构建一个消息传递系统,我在其中使用网格布局。我想在消息的顶部放置一个标签,在其下方有一个条目供人们输入;因此,我希望它们完全冲洗。我发现 pady 和 ipady 应该这样做,但即使将两者都设置为 0:
Label(mainframe, background='white', text='asdasdasdasdasd', anchor=W, justify=LEFT, bd=1, relief='solid').grid(column=1, row=3, sticky=(W,E), columnspan=3, pady=0, ipady=0,padx=0,ipadx=0)
Entry(mainframe, background='white', bd=1, relief='sunken').grid(column=1, row=4, sticky=(W,E), columnspan=3, pady=0, ipady=0, padx=0,ipadx=0)
代码生成下面的图像,元素之间仍有空格。不知道如何解决这个问题 - 我所有的谷歌搜索都告诉我,我需要做的就是将 pady 和 ipady 设置为 0,但显然这不起作用。感谢所有帮助。
编辑:
这是完整的代码:
from tkinter import *
root = Tk()
root.title("title")
mainframe = Frame(root)
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
root.columnconfigure(0, weight=1)
root.rowconfigure(0, weight=1)
Label(mainframe, text='Left Label').grid(column=1, row=1, sticky=(W, E), rowspan=2)
Label(mainframe, background='white', text='asdasdasdasdasd', anchor=W, justify=LEFT, bd=1, relief='solid').grid(column=1, row=3, sticky=(W,E), columnspan=3, pady=0, ipady=0,padx=0,ipadx=0)
Entry(mainframe, background='white', bd=1, relief='sunken').grid(column=1, row=4, sticky=(W,E), columnspan=3, pady=0, ipady=0, padx=0,ipadx=0)
Label(mainframe, text="Center Area").grid(column=2, row=1, sticky=W, rowspan=2)
Label(mainframe, text="Right Label").grid(column=3, row=1, sticky=W, rowspan=2)
for child in mainframe.winfo_children(): child.grid_configure(padx=5, pady=5)
root.mainloop()
【问题讨论】:
-
在我的电脑里,它们是链接在一起的。也许问题不在这里。可以举个小例子吗?
-
@jizhihaoSAMA 我添加了我正在使用的完整代码。
-
倒数第二行为
mainframe中的所有对象添加填充。
标签: python tkinter label spacing