所以我试图为我的A Level课程创建一个二十一点游戏(好吧,我在早期阶段)并且我使用Tkinter网格来定位我的所有小部件
我想要一个包含20列和10行的网格。 但是,在我的程序中,我只使用第1至18列和第1至18行。
我如何告诉Tkinter我仍然希望列0和19以及第0行和第9行为空白,因此它不认为我希望我的网格只有9行和19列?
我们说我将此作为我的基本程序:
from tkinter import *
window=Tk()
window.pack()
l=Label(window, text='Label1').grid(column=8, row=1)
l2=Label(window, text='Label2').grid(column=1, row=8)
所以,在这个程序中,网格会认为它只需要9列9行,但实际上我想要一个列号10(9)作为空格而行号10(9)作为空格同样。
请帮忙,我必须在两周内完成这个计划。
答案 0 :(得分:3)
默认情况下,空行/列的高度/宽度为0(零),您不会看到它(但它存在)。
您可以为行或列设置最小尺寸(即行/列编号9)
window.rowconfigure(9, {'minsize': 30})
window.columnconfigure(9, {'minsize': 30})
# or
window.rowconfigure(9, minsize=30)
window.columnconfigure(9, minsize=30)
或者您可以将Label
放在没有文字或空格作为文字的地方。
import tkinter as tk
window = tk.Tk()
l1 = tk.Label(window, text='Label1')
l1.grid(column=8, row=1)
l2 = tk.Label(window, text='Label2')
l2.grid(column=1, row=8)
# add empty label in row 0 and column 0
l0 = tk.Label(window, text=' ')
l0.grid(column=0, row=0)
# set minimal size for row 9 and column 9
window.rowconfigure(9, {'minsize': 30})
window.columnconfigure(9, {'minsize': 30})
window.mainloop()