【问题标题】:Python scrollable widget in tktk 中的 Python 可滚动小部件
【发布时间】:2025-12-13 08:15:01
【问题描述】:

所以我对 tk(python,下面的代码)中的 gui 有一点问题,问题是我的滚动条似乎没有链接到我的画布,尽管我认为我问得正确......有什么提示吗?

root = tk.Tk()  # window
root_frame = tk.Frame(root) # main container
root_frame.pack()

container_frame = tk.Frame(root_frame)  # specific container
container_frame.pack(fill="both")

inner_canvas = tk.Canvas(container_frame, width=100, height=100)  # contains the widgets
inner_canvas.grid_propagate(False)  # i heard this is necessary ...
inner_scrollbar = tk.Scrollbar(container_frame, command=inner_canvas.yview)
inner_canvas.configure(yscrollcommand=inner_scrollbar.set)
inner_canvas.pack(fill="both", side="left")
inner_scrollbar.pack(fill="y", side="right")
for k in range(100):  # simulate the homemade widgets i want to add.
    tk.Label(inner_canvas, text=str(k)+" row").grid(row=k, rowspan=1, columnspan=1)

root.mainloop()

【问题讨论】:

    标签: python tkinter tk


    【解决方案1】:

    画布滚动条只会滚动使用create_window 添加到画布的小部件。它不会使用packplacegrid 添加到画布上的滚动小部件。

    【讨论】: