簡體   English   中英

Python tk滾動框架?

[英]Python tk scroll frame?

我正在使用Tkinter和Python創建一個簡單的GUI應用程序,但是我在向單個框架添加滾動條時遇到了問題。 框架在我的20英寸上從上到下可見,但是為了在上網本或任何其他低分辨率屏幕上顯示所有內容,它需要一個滾動條。這是我認為它將如何工作的片段(它與列表框一起)。

framelist = Tkinter.Frame(self.pmaster, relief=FLAT, borderwidth=0)
framelist.pack(fill=BOTH, padx=0, pady=0)
yscroll = Tkinter.Scrollbar(framelist, width=10, orient=VERTICAL)
yscroll.pack(fill=Y,side=RIGHT,padx=0,pady=0)

雖然這顯然不適用於幀。 我們將非常感謝您對此問題的任何幫助!

我也想知道Tkinter是否會過時。 這是我在學校學到的唯一一個GUI界面,但幾年前就已經不再符合我的要求了。 當然必須有更好的選擇嗎? 我在Ubuntu順便說一下。

tkinter的框架小部件不會滾動。 一種解決方案是將整個框架放在畫布中(作為畫布對象),並將滾動條附加到畫布上。 你必須告訴畫布可滾動區域有多大,你可以通過在放置所有小部件后獲得框架的大小來做到這一點。 但是,您可能想重新考慮您的UI設計 - 無論您使用哪種GUI工具包,可滾動框架都不是很容易使用。

至於Tkinter是否過時......有人說是,有些人說不。 那里有很多tkinter錯誤的信息,所以拿出所有的tkinter意見(即使是我的!)。 Tkinter繼續改進,它並沒有停滯不前。 如果您可以使用python 2.7或更高版本,則可以訪問ttk小部件,這些小部件提供特定於平台的主題和其他小部件,例如筆記本和分層樹等。

對於替代方案,您可能需要查看wxPython。 根據我的經驗,它似乎比tkinter有更多的錯誤和怪癖,但有更多的小部件,似乎更受歡迎。

我覺得tkinter和wxPython之間的區別就像Home Depot(一個家居裝修/腰部商店)和Ikea(你自己組裝的預制家具)之間的區別 - 一個給你所有的點點滴滴任何你想要的東西(tkinter)另一個給你很多預包裝的東西。 每種方法都有其優點和缺點。

暫無
暫無

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

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