为什么我的按钮和框架在Python Tkinter中没有按照正确的几何坐标排列,尽管给出了正确的尺寸

为什么我的按钮和框架在Python Tkinter中没有按照正确的几何坐标排列,尽管给出了正确的尺寸,python,tkinter,Python,Tkinter,我正在尝试为我的井字游戏创建一个窗口。在主根窗口Dimensions->height=700,width=600中,我创建了两个框架 1:顶部框架称为ActionArea,具有尺寸->高度=600和宽度=600 2:底部框架称为StatArea,尺寸->高度=100,宽度=600 在顶部框架中,我放置了9个按钮,每个按钮的大小相等,为200*200 这是我的期望: 这就是我正在运行代码的现实: 这是守则的相关部分: root=tk.Tk() root.title("TIC TAC TOE")

我正在尝试为我的井字游戏创建一个窗口。在主根窗口Dimensions->height=700,width=600中,我创建了两个框架

1:顶部框架称为ActionArea,具有尺寸->高度=600和宽度=600

2:底部框架称为StatArea,尺寸->高度=100,宽度=600

在顶部框架中,我放置了9个按钮,每个按钮的大小相等,为200*200

这是我的期望:

这就是我正在运行代码的现实:

这是守则的相关部分:

root=tk.Tk()
root.title("TIC TAC TOE")
root.geometry("600x700")


#creating two frames
ActionArea=tk.Frame(root,height=600,width=600,bg="AliceBlue")
StatArea=tk.Frame(root,height=100,width=600,bg="RoyalBlue")

#placing the frames onto root window
ActionArea.grid(row=0,column=0)
StatArea.grid(row=1,column=0)

#creating the buttons
b1=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b2=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b3=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b4=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b5=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b6=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b7=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b8=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")
b9=tk.Button(ActionArea,text="", height=200,width=200,bg="AliceBlue")

#packing the buttons
b1.grid(row=0,column=0)
b2.grid(row=0,column=1)
b3.grid(row=0,column=2)
b4.grid(row=1,column=0)
b5.grid(row=1,column=1)
b6.grid(row=1,column=2)
b7.grid(row=2,column=0)
b8.grid(row=2,column=1)
b9.grid(row=2,column=2)
所以,有很多疑问。
我精确地将每个按钮的尺寸调整为200*200,以适合我的顶部框架(尺寸为600*600)。然而,正如你所看到的,这个按钮变得大得离谱。为什么会这样

这正是因为您将按钮的大小设置为高度=200,宽度=200。按钮的高度和宽度并不总是以像素为单位。从:

高度= 按钮的高度。如果按钮显示文本,则大小以文本单位给出。如果按钮显示图像,则大小以像素或屏幕单位给出。如果忽略大小,则根据按钮内容计算大小。高度/高度

宽度= 按钮的宽度。如果按钮显示文本,则大小以文本单位给出。如果按钮显示图像,则大小以像素或屏幕单位给出。如果省略了大小或为零,则根据按钮内容计算大小。宽度/宽度

您的按钮包含text=,因此大小以文本单位表示,大于像素

通常不需要显式设置每个帧的大小,特别是如果希望使它们都具有相同的大小。例如,看一看