删除 tkinter 中按钮之间的空间

Fib*_*o36 3 python tkinter

我正在 tkinter 中制作一个计算器,我试图让按钮像这样彼此相邻:

计算器

到目前为止,这是我的按钮代码:

Entry(root).grid(row=0, column=0, columnspan=5)

Button(root, text='C').grid(row=1, column=0, sticky='w')
Button(root, text='CE').grid(row=1, column=1, sticky='w')

Button(root, text='0').grid(row=5, column=0)

columncount = 0

for x in range(1, 4):
    Button(root, text=str()).grid(row=4, column=columncount)
    columncount += 1

columncount = 0

for x in range(4, 7):
    Button(root, text=str(x)).grid(row=3, column=columncount)
    columncount += 1

columncount = 0

for x in range(7, 10):
    Button(root, text=str(x)).grid(row=2, column=columncount)
    columncount += 1
Run Code Online (Sandbox Code Playgroud)

怎么去掉空格?

Bry*_*ley 5

您需要请求小部件扩展以填充给它们的空间。使用grid几何管理器,您可以使用sticky属性来控制它。你给它一个包含“n”、“s”、“e”和“w”中一个或多个的字符串,代表罗盘的点(北、南、东、西)

例如:

Button(root, text=str()).grid(row=4, column=columncount, sticky="nsew")
Run Code Online (Sandbox Code Playgroud)

您需要为每个按钮都这样做。

如果您真的不希望按钮之间没有空间,您可能还需要关闭用于显示哪个按钮具有键盘焦点的高亮环。这由highlightthickness属性控制,默认为 1 像素。

Button(..., highlightthickness=0)
Run Code Online (Sandbox Code Playgroud)

建议不要这样做,因为戒指对于能够在没有鼠标的情况下使用该应用程序很重要。