Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x tkinter机架工作不正常_Python 3.x_Tkinter_Grid_Frame - Fatal编程技术网

Python 3.x tkinter机架工作不正常

Python 3.x tkinter机架工作不正常,python-3.x,tkinter,grid,frame,Python 3.x,Tkinter,Grid,Frame,有谁能帮我解释一下为什么columnspan在该代码中没有任何作用: import tkinter as tk root = tk.Tk() frametop = tk.Frame(root).grid(row = 0, column = 0, columnspan = 2) labeltest1 = tk.Label(frametop, text="A").grid(row = 0, column = 0) labeltest2 = tk.Label(frametop, text="B")

有谁能帮我解释一下为什么
columnspan
在该代码中没有任何作用:

import tkinter as tk

root = tk.Tk()

frametop = tk.Frame(root).grid(row = 0, column = 0, columnspan = 2)
labeltest1 = tk.Label(frametop, text="A").grid(row = 0, column = 0)
labeltest2 = tk.Label(frametop, text="B").grid(row = 0, column = 1)
labeltest3 = tk.Label(frametop, text="C").grid(row = 0, column = 2)

framebottom = tk.Frame(root).grid(row = 1, column = 0)
labeltest4 = tk.Label(framebottom, text="Hello World").grid(row = 1, column = 0)
labeltest5 = tk.Label(framebottom, text="Hello World").grid(row = 1, column = 1)
labeltest6 = tk.Label(framebottom, text="Hello World").grid(row = 1, column = 2)

root.mainloop()
labeltest1
labeltest2
labeltest3
以类似于
framebottom
的窗口小部件的列形式分发。我想要的是在一个
框架内有3列的网格,其中
列span=2
具有相同的行。
类似于此:

||   A    |   B   |   C    ||  
| Hello World | Hello World | Hello World |

代码的组织方式,
框架
没有任何效果;当您在创建小部件的同一行上创建
grid
时,
None
将返回并存储在用于
帧和
标签的变量中。结果是标签直接插入到
根目录中

以下操作与此相同,根据您的请求放置标签

import tkinter as tk

root = tk.Tk()

tk.Label(root, text="A").grid(row=0, column=0, columnspan=2)
tk.Label(root, text="B").grid(row=0, column=2, columnspan=2)
tk.Label(root, text="C").grid(row=0, column=4, columnspan=2)

tk.Label(root, text="Hello World").grid(row=1, column=0, columnspan=3)
tk.Label(root, text="Hello World").grid(row=1, column=3, columnspan=3)
tk.Label(root, text="Hello World").grid(row=1, column=6, columnspan=3)

root.mainloop()
GUI外观(osX):

不同框架中的列彼此完全不同步。