簡體   English   中英

在框架中放置Tkinter小部件的問題

[英]Issue with placing Tkinter widgets within frame

我剛剛開始使用Tkinter,但遇到一個非常簡單的問題,這使我發瘋。 我正在嘗試在標簽框架內放置一個按鈕。 這是一項非常簡單的任務,其中包含許多在線教程。 只需創建按鈕並將框架指定為父框架即可。 然后使用pack命令將小部件打包在其父級中。 但是,當我這樣做時,按鈕-或任何小部件-始終位於父項下。 無論我使用pack還是grid,子小部件始終位於其下方。 參照這張圖片

from tkinter import *

application = Tk()
lblframe = LabelFrame(application, width=300, height=300, text="Test", bd=10).pack()
btn = Button(lblframe, text="Button 1").pack()
application.mainloop()

pack()返回的值為None。 因此,您要分配lblframe來保存值None,因此,當您創建Button小部件時,它會將None傳遞為父級。 這導致其父級成為應用程序的頂層,因此是您看到的打包(兩個小部件都打包到同一容器中)。 如果分別進行創建和打包,它將按預期工作,例如:

from tkinter import *

application = Tk()
lblframe = LabelFrame(application, width=300, height=300, text="Test", bd=10)
btn = Button(lblframe, text="Button 1")
lblframe.pack()
btn.pack()
application.mainloop()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM