Python Tkinter 绝对布局 Frame 添加滚动条
在 Tkinter 中,使用绝对布局 (Frame) 添加滚动条的步骤如下:
- 导入 Tkinter 库和 ttk 模块:
import tkinter as tk
from tkinter import ttk
- 创建主窗口对象和滚动条对象:
root = tk.Tk()
scrollbar = ttk.Scrollbar(root)
- 创建 Frame 对象,并设置其滚动方向为垂直:
frame = ttk.Frame(root)
frame.pack(fill=tk.BOTH, expand=True) # 设置 Frame 充满整个父容器
- 将滚动条与 Frame 绑定:
scrollbar.configure(command=frame.yview) # 绑定滚动条和 Frame 的垂直滚动
frame.configure(yscrollcommand=scrollbar.set) # 绑定 Frame 和滚动条的垂直滚动
- 将滚动条放置在窗口的右侧:
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
- 在 Frame 中添加需要滚动的内容:
# 在 Frame 中添加需要滚动的内容
for i in range(20):
ttk.Label(frame, text='Label ' + str(i)).pack()
- 运行主循环:
root.mainloop()
完整示例代码如下:
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
scrollbar = ttk.Scrollbar(root)
frame = ttk.Frame(root)
frame.pack(fill=tk.BOTH, expand=True)
scrollbar.configure(command=frame.yview)
frame.configure(yscrollcommand=scrollbar.set)
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
for i in range(20):
ttk.Label(frame, text='Label ' + str(i)).pack()
root.mainloop()
这样,就在绝对布局的 Frame 中添加了滚动条。
原文地址: https://www.cveoy.top/t/topic/pAMy 著作权归作者所有。请勿转载和采集!