我试图了解 tk 网格布局是如何工作的,因为界面看起来不像我想象的那样。我试图在同一行上放置一个标签,后跟 2 个按钮,并在下一行放置一个超出标签和按钮宽度的树视图。让它看起来像我想要的唯一方法是如果我为树视图的列跨度使用一个巨大的值。这是我的代码:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
columnHeadings = ("Heading 1", "Heading 2")
def printMsg():
print("Ok")
frame = ttk.Frame(root).grid(row=0, column=0)
label1 = tk.Label(frame, text="Label here").grid(row=0, column=0, columnspan=1)
button1 = tk.Button(frame, text="Yes", width=2, command=printMsg).grid(row=0, column=1)
button2 = tk.Button(frame, text="No", width=2, command=printMsg).grid(row=0, column=2)
#Label and buttons too far apart
#treeview1 = ttk.Treeview(frame, columns=columnHeadings, show='headings').grid(row=1,column=0, columnspan=3)
#Right distance but that's a huge columnspan
treeview1 = ttk.Treeview(frame, columns=columnHeadings, show='headings').grid(row=1,column=0, columnspan=100)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
当 columnspan 为 3 …