亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

請問如何阻止Tkinter Frame收縮以適合其內容?

請問如何阻止Tkinter Frame收縮以適合其內容?

慕運維8079593 2020-01-05 11:00:06
這是給我麻煩的代碼。f = Frame(root, width=1000, bg="blue")f.pack(fill=X, expand=True)l = Label(f, text="hi", width=10, bg="red", fg="white")l.pack()如果我用標簽注釋掉行,則框架顯示為正確的寬度。但是,添加標簽似乎將框架縮小到標簽的大小。有辦法防止這種情況發生嗎?
查看完整描述

2 回答

?
慕尼黑5688855

TA貢獻1848條經驗 獲得超2個贊

默認情況下,pack以及grid 縮小或放大一個小部件,以適應其內容,這是你想要什么的時候99.9%。描述此功能的術語是“幾何傳播”。還有一個命令以打開幾何傳播或使用時關閉pack(和類似的一個為grid)。


由于您正在使用pack,因此語法為:


f.pack_propagate(0)

或root.pack_propagate(0),取決于您實際想要影響的小部件。但是,由于未提供框高,因此其默認高度為一像素,因此您仍然可能看不到內部小部件。要獲得所需的全部效果,您需要給包含的框架一個寬度和一個高度。


話雖這么說,絕大多數時候您應該讓Tkinter計算大小。當您打開幾何傳播了你的GUI不會在分辨率的變化反應良好,改變字體等Tkinter的幾何管理器(pack,place和grid)是非常強大。學會利用這種力量。



查看完整回答
反對 回復 2020-01-06
?
aluckdog

TA貢獻1847條經驗 獲得超7個贊

如果也可以self.pack_propagate(0)__init__()Frame通常使用的class Application(Frame):成語中那樣,使用從- 派生的小部件類的方法來完成此操作

查看完整回答
反對 回復 2020-01-06
  • 2 回答
  • 0 關注
  • 799 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號