如何删除按钮之间的这些空格? python tkinter

时间:2019-04-06 16:52:31

标签: python tkinter

是否可以删除按钮之间的这些空格?

https://imgur.com/IdwAgDX

lbl1.grid(row=0, column=2)
list1.grid(row=1, column=2)
lbl2.grid(row=0, column=3)
list2.grid(row=1, column=3)
lbl3.grid(row=0, column=4)
list3.grid(row=1, column=4)
bt0.grid(row=0, column=0, sticky="W")
bt1.grid(row=1, column=0, sticky="W")
bt2.grid(row=2, column=0, sticky="W")
bt3.grid(row=3, column=0, sticky="W")
bt4.grid(row=4, column=0, sticky="W")
bt5.grid(row=5, column=0, sticky="W")

1 个答案:

答案 0 :(得分:1)

您可以将Frame放在单元格中,然后使用pack()grid()在此框中放置按钮

import tkinter as tk

root = tk.Tk()

f0 = tk.Frame(root)
f0.grid(row=0, column=1)

bA = tk.Button(f0, text='Button A')
bA.pack(side='left')

bB = tk.Button(f0, text='Button B')
bB.pack(side='left')

bB = tk.Button(f0, text='Button C')
bB.pack(side='left')

f1 = tk.Frame(root)
f1.grid(row=1, column=0)

b1 = tk.Button(f1, text='Button 1')
b1.pack()

b2 = tk.Button(f1, text='Button 2')
b2.pack()

b3 = tk.Button(f1, text='Button 3')
b3.pack()

t1 = tk.Text(root)
t1.grid(row=1, column=1)

root.mainloop()

enter code here


或者您可以使用rowspan,以便小部件(即Text)将使用很多行,然后其他小部件将使用较少的空间-但按钮周围仍然会有一些空间。如果您还使用rowconfig(... ,weight=1),则最后一行将使用所有可用空间。

我有3行带按钮,但是我使用rowspan=4,所以Text也会在按钮后使用空行。然后我使用root.rowconfigure(4, weight=1),因此此空行将使用列中的所有空空间。

import tkinter as tk

root = tk.Tk()

bA = tk.Button(root, text='Button A')
bA.grid(row=0, column=1)

bB = tk.Button(root, text='Button B')
bB.grid(row=0, column=2)

bC = tk.Button(root, text='Button C')
bC.grid(row=0, column=3)

b1 = tk.Button(root, text='Button 1')
b1.grid(row=1, column=0)

b2 = tk.Button(root, text='Button 2')
b2.grid(row=2, column=0)

b3 = tk.Button(root, text='Button 3')
b3.grid(row=3, column=0)

t1 = tk.Text(root)
t1.grid(row=1, column=1, rowspan=4, columnspan=4)

root.rowconfigure(4, weight=1) # resize

root.columnconfigure(4, weight=1) # resize

root.mainloop()

enter image description here