[英]How to make the spacing between two widgets displayed in a 3 column grid equal in tkinter?
以下代碼循環三次以創建三個標簽小部件,
import tkinter as tk
root = tk.Tk()
root.geometry("400x200")
frm = tk.Frame(master=root, bg="yellow")
frm.columnconfigure(index=(0, 1, 2), weight=1)
for i in range(3):
tk.Label(master=frm, text=i, bg="red", padx=40, pady=10).grid(row=0, column=i)
frm.pack(fill="both", expand=True)
root.mainloop()
給出以下輸出(正如人們所期望的):
但是,以下代碼只循環兩次以創建兩個標簽小部件,
import tkinter as tk
root = tk.Tk()
root.geometry("400x200")
frm = tk.Frame(master=root, bg="yellow")
frm.columnconfigure(index=(0, 1, 2), weight=1)
for i in range(2):
tk.Label(master=frm, text=i, bg="red", padx=40, pady=10).grid(row=0, column=i)
frm.pack(fill="both", expand=True)
root.mainloop()
給出這個輸出:
如您所見,兩個小部件沒有正確間隔開。 我想得到這種輸出:
我如何實現這一目標? 為什么輸出 #2 中的間距不均勻?
請記住,我想在不創建任何其他標簽小部件的情況下執行此操作,因為我使用類似的方法在我使用 tkinter 制作的應用程序中顯示搜索結果。 我問這個問題是因為當我嘗試僅顯示兩個搜索結果或僅顯示一個搜索結果時,我在該應用程序中面臨同樣的問題。
預先感謝您的回答! 請原諒我,因為我只是 tkinter 的初學者。
PS:我知道這與問題有點不同,但如果您能指出一些來源/教程,我可以更好地了解有關 tkinter 工作原理的更多信息,請這樣做!
注意:我使用的是 Python v3.8.5
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.