它显示了如何创建滚动框架-然后可以在此框架中添加所有小部件。
import tkinter as tkdef on_configure(event): # update scrollregion after starting 'mainloop' # when all widgets are in canvas canvas.configure(scrollregion=canvas.bbox('all'))root = tk.Tk()# --- create canvas with scrollbar ---canvas = tk.Canvas(root)canvas.pack(side=tk.LEFT)scrollbar = tk.Scrollbar(root, command=canvas.yview)scrollbar.pack(side=tk.LEFT, fill='y')canvas.configure(yscrollcommand = scrollbar.set)# update scrollregion after starting 'mainloop'# when all widgets are in canvascanvas.bind('<Configure>', on_configure)# --- put frame in canvas ---frame = tk.frame(canvas)canvas.create_window((0,0), window=frame, anchor='nw')# --- add widgets in frame ---l = tk.Label(frame, text="Hello", font="-size 50")l.pack()l = tk.Label(frame, text="World", font="-size 50")l.pack()l = tk.Label(frame, text="Test text 1nTest text 2nTest text 3nTest text 4nTest text 5nTest text 6nTest text 7nTest text 8nTest text 9", font="-size 20")l.pack()# --- start program ---root.mainloop()


