python怎么用scrollber+canvas给frame加一个滚动重点是canvas为父件frame是子件而frame子件是专门给添加子件的frame有多大canvas就多大frame位置在哪canvas就在那举一个简单例子
以下是一个简单的例子,展示如何使用scrollbar和canvas给frame添加滚动:
import tkinter as tk
root = tk.Tk()
# 创建一个滚动条
scrollbar = tk.Scrollbar(root)
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
# 创建一个Canvas
canvas = tk.Canvas(root, yscrollcommand=scrollbar.set)
canvas.pack(side=tk.LEFT, fill=tk.BOTH, expand=True)
# 将Canvas放入一个Frame中
frame = tk.Frame(canvas)
canvas.create_window(0, 0, anchor=tk.NW, window=frame)
# 添加一些子件到Frame中
for i in range(50):
label = tk.Label(frame, text=f"Label {i}")
label.pack()
# 设置滚动条和Canvas的关联
scrollbar.config(command=canvas.yview)
canvas.config(scrollregion=canvas.bbox("all"))
root.mainloop()
在这个例子中,我们首先创建一个滚动条和一个Canvas。然后,我们将Canvas放入一个Frame中,并将Frame作为Canvas的子件。接着,我们在Frame中添加一些子件(这里是Label),并设置滚动条和Canvas的关联。最后,我们启动Tkinter的主循环,让程序执行起来
原文地址: https://www.cveoy.top/t/topic/cYpp 著作权归作者所有。请勿转载和采集!