在 Tkinter 中,使用绝对布局 (Frame) 添加滚动条的步骤如下:

  1. 导入 Tkinter 库和 ttk 模块:
import tkinter as tk
from tkinter import ttk
  1. 创建主窗口对象和滚动条对象:
root = tk.Tk()
scrollbar = ttk.Scrollbar(root)
  1. 创建 Frame 对象,并设置其滚动方向为垂直:
frame = ttk.Frame(root)
frame.pack(fill=tk.BOTH, expand=True)  # 设置 Frame 充满整个父容器
  1. 将滚动条与 Frame 绑定:
scrollbar.configure(command=frame.yview)  # 绑定滚动条和 Frame 的垂直滚动
frame.configure(yscrollcommand=scrollbar.set)  # 绑定 Frame 和滚动条的垂直滚动
  1. 将滚动条放置在窗口的右侧:
scrollbar.pack(side=tk.RIGHT, fill=tk.Y)
  1. 在 Frame 中添加需要滚动的内容:
# 在 Frame 中添加需要滚动的内容
for i in range(20):
    ttk.Label(frame, text='Label ' + str(i)).pack()
  1. 运行主循环:
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 中添加了滚动条。

Python Tkinter 绝对布局 Frame 添加滚动条

原文地址: https://www.cveoy.top/t/topic/pAMy 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录