簡體   English   中英

使用網格布局的Python Tkinter滾動條

[英]Python Tkinter Scrollbar using grid layout

我試圖做一個簡單的GUI,它具有兩個列表框,一個列表框位於滾動條中。 我能夠將所有這些添加到窗口,但我看不到其他列表框,只是滾動條。 我正在使用GRID布局

這是我的代碼:

from Tkinter import *
import glob, os

master = Tk()

master.resizable(width=FALSE, height=FALSE)
master.geometry('{}x{}'.format(400, 500))

listbox = Listbox(master)
listbox.grid(row=0,column=0)


listbox.insert(END, "a list entry")

for item in ["one", "two", "three", "four"]:
    listbox.insert(END, item)


data=Listbox(master,bg="grey")
scrollbar = Scrollbar(data, orient=VERTICAL)
data.config(yscrollcommand=scrollbar.set)
scrollbar.config(command=data.yview)
for file in glob.glob("*.*"):
        print(file)
        data.insert(END,file)
        #data.grid(row=0,column=2)

data.grid(row=1, column=2, rowspan=4,
                   columnspan=2, sticky=N+E+S+W)
data.columnconfigure(3, weight=1)
scrollbar.grid(column=2, sticky=N+S)


master.mainloop()

問題是您將滾動條放在列表框中,這是滾動條的錯誤方法。 問題是,當您使用網格將滾動條放置在列表框中時,列表框將縮小以適合滾動條。 由於滾動條沒有定義的類型,因此列表框會縮小到非常小的尺寸。

解決方案是使滾動條成為框架的子項,而不是列表框的子項。

暫無
暫無

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

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