我有作業水平滾動條,但由于某種原因它不會調整“可見”欄。它確實可以完美滾動,但在添加 style 之前我什至沒有注意到有一個欄clam。

這是我的代碼:
from tkinter import *
from tkinter import ttk
root = Tk()
style = ttk.Style()
style.theme_use('clam')
main_frame = Frame(root)
main_frame.pack(fill=BOTH, expand=1)
my_canvas = Canvas(main_frame)
my_canvas.pack(side=TOP, fill=BOTH, expand=1)
my_scrollbar = ttk.Scrollbar(main_frame, orient=HORIZONTAL, command=my_canvas.xview)
my_scrollbar.pack(side=BOTTOM, fill=X)
my_canvas.configure(yscrollcommand=my_scrollbar.set)
my_canvas.bind('<Configure>', lambda e: my_canvas.configure(scrollregion=my_canvas.bbox("all")))
seccond_frame = Frame(my_canvas)
my_canvas.create_window((0,0), window=seccond_frame, anchor="nw")
for i in range(100):
Label(seccond_frame, text=f"a{i}").grid(row=0, column=i)
root.update()
root.mainloop()
uj5u.com熱心網友回復:
您的代碼中有兩個問題:
my_canvas.configure(yscrollcommand=my_scrollbar.set)應該my_canvas.configure(xscrollcommand=my_scrollbar.set)向 中添加專案時
seccond_frame,它seccond_frame會調整大小,而不是my_canvas. 所以你需要系結<Configure>而seccond_frame不是my_canvas
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/439066.html
