Scalet和Spinbox 是tk中用来调节刻度的小部件。
Scalet 滑动模块部件
Scalet 在使用中有几个必要的地方:
- 设置刻度,
from_=0, to=1000,
还可以from_=0, to=10,resolution=0.1
,设置每次调结刻度值 - 滑块滑动事件,当滑动时,返回当前的刻度,有二种方法,无论哪种方法,需要先绑定回调函数
command=prtsa
- 取回当前刻度值,回调函数包括一个text字符串参数,通过这个参数可以直接返回当前的刻度值,另外还可以通过绑定变量来返回刻度值。
Spinbox
- 绑定回调函数,然后通过
get()
方法返部件当前值。
源码
import tkinter as tk
root = tk.Tk()
root.title("Scrollbar 测试")
#分别创建一个横向,一个坚向的滚动条,
ybar = tk.Scrollbar(root)
ybar.pack(fill=tk.Y, side=tk.RIGHT)
xbar = tk.Scrollbar(root,orient=tk.HORIZONTAL)#orient=tk.HORIZONTAL表示为坚向滚动
xbar.pack(fill=tk.X, side=tk.BOTTOM,)
# 创建文本框,并设置横向及坚向的滚动条,wrap='none'表示文本不换
t = tk.Text(root,yscrollcommand=ybar.set,xscrollcommand=xbar.set, wrap='none')
t.pack(fill=tk.BOTH)
# 添加一些字符串
s = ""
for i in range(100):
for j in range(100):
s = s+str(i)+" "
s = s+"\n"
t.insert(tk.END,s)
#为滚动条添加对应的函数,添加后,滚动条才会有效滚动
ybar.config(command=t.yview)
xbar.config(command=t.xview)
root.mainloop()