Python 3 – Tkinter滚动条
此小部件提供了一个滑动控制器,用于实现垂直滚动的小部件,如Listbox,Text和Canvas。请注意,您还可以在Entry小部件上创建水平滚动条。
语法
创建此小部件的简单语法如下所示−
w = Scrollbar(master,option,...)
参数
- master − 这表示父窗口。
-
选项 − 这是此小部件的最常用选项列表。这些选项可以用逗号分隔的键值对来使用。
序号 | 选项与描述 |
---|---|
1 | activebackground 当鼠标悬停在滑块和箭头上时的颜色。 |
2 | bg 当鼠标未悬停在滑块和箭头上时的颜色。 |
3 | bd 整个槽周围的3D边框的宽度,以及箭头和滑块上3D效果的宽度。默认情况下,槽周围没有边框,箭头和滑块周围有2像素的边框。 |
4 | command 每当滚动条移动时调用的过程。 |
5 | cursor 当鼠标悬停在滚动条上方时出现的光标。 |
6 | elementborderwidth 箭头和滑块周围的边框宽度。默认为elementborderwidth=-1,表示使用borderwidth选项的值。 |
7 | highlightbackground 当滚动条没有获得焦点时的焦点高亮颜色。 |
8 | highlightcolor 当滚动条有焦点时的焦点高亮颜色。 |
9 | highlightthickness 焦点高亮的厚度。默认为1。将其设置为0可以抑制显示焦点高亮。 |
10 | jump 此选项控制用户拖动滑块时发生的情况。通常(jump = 0),每次拖动滑块时都会调用命令回调。如果将此选项设置为1,则在用户释放鼠标按钮之前不会调用回调。 |
11 | orient 对于水平滚动条,请设置orient = HORIZONTAL,对于垂直滚动条,请设置orient = VERTICAL。 |
12 | repeatdelay 此选项控制必须在槽中按住按钮1多长时间,滑块才开始按该方向重复移动。默认情况下,repeatdelay = 300,单位为毫秒。 |
13 | repeatinterval repeatinterval |
14 | takefocus 通常,您可以通过小部件滚动条进行焦点选项卡。如果不希望进行此操作,请将takefocus = 0。 |
15 | troughcolor 槽的颜色。 |
16 | width 滚动条的宽度(如果为水平,则为其y维度;如果为垂直,则为其x维度)。默认为16。 |
方法
滚动条对象具有以下方法 −
序号 | 方法和描述 |
---|---|
1 | get() 返回两个数(a,b),描述滑块当前位置。a的值表示水平滚动条的左侧或顶部边缘位置;b的值表示其右侧或底部边缘位置。 |
2 | set ( first, last ) 将滚动条与其他小部件w连接,将w的xscrollcommand或yscrollcommand设置为滚动条的set()方法。这些参数的含义与get()方法返回的值相同。 |
示例
请尝试以下示例 –
# !/usr/bin/python3
from tkinter import *
root = Tk()
scrollbar = Scrollbar(root)
scrollbar.pack( side = RIGHT, fill = Y )
mylist = Listbox(root, yscrollcommand = scrollbar.set )
for line in range(100):
mylist.insert(END, "This is line number " + str(line))
mylist.pack( side = LEFT, fill = BOTH )
scrollbar.config( command = mylist.yview )
mainloop()
结果
当执行上面的代码时,它会产生以下结果 –