碎言博客

Python TK和Tkinter的GUI编程(8) Scalet和Spinbox的简单使用

J.sky 2017-09-28 09:50:15 Python GUI

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()

相关参考

本文源码下载:

发现错误?想参与编辑? 在 GitHub 上编辑此页!

如果您有什么问题,欢迎加入Python/Javascript学习讨论群询问

Python/Javascript学习QQ群号:217840699