第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

添加自定義類小部件時 PanedWindow 沒有子級

添加自定義類小部件時 PanedWindow 沒有子級

MM們 2023-07-27 10:06:54
這是我面臨的一個非常特殊的問題,盡管這可能是因為我對 TKinter 的內(nèi)部運作缺乏了解。我正在嘗試創(chuàng)建一個名為 ScrollableFrame 的類,它繼承自 Frame 并將其添加到 PanedWindow 小部件中。假設(shè)我添加一個普通框架:main_panel = PanedWindow()main_panel.pack()settings_frame = Frame()main_panel.add(settings_frame)該代碼有效,當(dāng)我調(diào)用時main_panel.children我可以看到框架。當(dāng)我使用 ScrollableFrame 時,如下所示:class ScrollableFrame(Frame):    def __init__(self, **kw):        try:            super().__init__(**kw)            self._canvas = Canvas(self)            self._frame = Frame(self._canvas)            self._scrollbar = Scrollbar(self._canvas, orient=VERTICAL, command=self._canvas.yview)            self._canvas.configure(yscrollcommand=self._scrollbar.set)        except Exception as e:            print(e)main_panel = PanedWindow()main_panel.pack()settings_frame = ScrollableFrame()main_panel.add(settings_frame)當(dāng)我調(diào)用時, main_panel 報告根本沒有子項main_panel.children。有人遇到過這種情況嗎?提前致謝。
查看完整描述

1 回答

?
繁華開滿天機(jī)

TA貢獻(xiàn)1816條經(jīng)驗 獲得超4個贊

該小組報告說沒有孩子,因為它沒有孩子。您沒有將窗格窗口作為父窗口傳遞,ScrollableFrame以便滾動框架成為根窗口的子窗口。

如果您希望可滾動框架成為窗格窗口的子窗口,則需要將窗格窗口設(shè)為其父窗口。您需要傳遞main_panelScrollableFrame. 由于您的實現(xiàn)ScrollableFrame不采用位置參數(shù),因此您必須將父級指定為master關(guān)鍵字參數(shù):

settings_frame = ScrollableFrame(master=main_panel)

pack您還存在一個問題,即您沒有為畫布、框架和滾動條調(diào)用 、place或。grid這不會影響您所詢問的父/子問題,但會阻止這些小部件可見。

您也不應(yīng)該將滾動條放在畫布內(nèi)。這將導(dǎo)致滾動條位于靠近右邊距繪制的對象的頂部。


查看完整回答
反對 回復(fù) 2023-07-27
  • 1 回答
  • 0 關(guān)注
  • 135 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號