如何使用scrollbar组件实现滚动的效果
Admin 2022-09-30 群英技术资讯 1530 次浏览
这篇主要是介绍“如何使用scrollbar组件实现滚动的效果”的内容了,下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家解决如何使用scrollbar组件实现滚动的效果的问题,下面我们一起来了解看看吧。Scrollbar 组件通常几乎与 Text 组件、Canvas 组件和 Listbox 组件一起使用,水平滚动条还能跟 Entry 组件配合。
下边例子我们演示如何使用垂直滚动条。为了在某个组件上安装垂直滚动条,你需要做两件事:
1. 设置该组件的 yscrollbarcommand 选项为 Scrollbar 组件的 set() 方法;
2. 设置 Scrollbar 组件的 command 选项为该组件的 yview() 方法。
import tkinter as tk
root = tk.Tk()
sb = tk.Scrollbar(root)
sb.pack(side="right", fill="y")
lb = tk.Listbox(root, yscrollcommand=sb.set)
for i in range(1000):
lb.insert("end", str(i))
lb.pack(side="left", fill="both")
sb.config(command=lb.yview)
root.mainloop()

分析:当 Listbox 组件的可视范围发生改变的时候,Listbox 组件通过调用 set() 方法通知 Scrollbar 组件。而当用户操纵滚动条的时候,将自动调用 Listbox 组件的 yview() 方法。
添加水平滚动条方法跟上边一样,只是将 yscrollcommand 改为 xscrollcommand,yview 改为 xview 即可。
Scrollbar(master=None, **options) (class)
master -- 父组件
**options -- 组件选项,下方表格详细列举了各个选项的具体含义和用法:
| 选项 | 含义 |
| activebackground | 1. 指定当鼠标在上方飘过的时候滑块和箭头的背景颜色 2. 默认值由系统指定 |
| activerelief | 1. 指定当鼠标在上方飘过的时候滑块的样式 2. 默认值是 "raised" 3. 可以选择 "flat","sunken","groove","ridge" |
| background | 1. 指定背景颜色 2. 默认值由系统指定 |
| bg | 跟 background 一样 |
| borderwidth | 1. 指定边框宽度 2. 默认值是 0 |
| bd | 跟 borderwidth 一样 |
| command | 1. 当滚动条更新时回调的函数 2. 通常的是指定对应组件的 xview() 或 yview() 方法 |
| cursor | 1. 指定当鼠标在上方飘过的时候的鼠标样式 2. 默认值由系统指定 |
| elementborderwidth | 1. 指定滚动条和箭头的边框宽度 2. 默认值是 -1(表示使用 borderwidth 选项的值) |
| highlightbackground | 1. 指定当滚动条没有获得焦点的时候高亮边框的颜色 2. 默认值由系统指定 |
| highlightcolor | 1. 指定当滚动条获得焦点的时候高亮边框的颜色 2. 默认值由系统指定 |
| highlightthickness | 1. 指定高亮边框的宽度 2. 默认值是 0(不带高亮边框) |
| jump | 1. 指定当用户拖拽滚动条时的行为 2. 默认值是 False,滚动条的任何一丝变动都会即刻调用 command 选项指定的回调函数 3. 设置为 True 则当用户松开鼠标才调用 |
| orient | 1. 指定绘制 "horizontal"(垂直滚动条)还是 "vertical"(水平滚动条) 2. 默认值是 VERTICAL |
| relief | 1. 指定边框样式 2. 默认值是 "sunken" 3. 可以选择 "flat","raised","groove","ridge" |
| repeatdelay | 1. 该选项指定鼠标左键点击滚动条凹槽的响应时间 2. 默认值是 300(毫秒) |
| repeatinterval | 1. 该选项指定鼠标左键紧按滚动条凹槽时的响应间隔 2. 默认值是 100(毫秒) |
| takefocus | 1. 指定使用 Tab 键可以将焦点移到该 Scrollbar 组件上 2. 默认是开启的,可以将该选项设置为 False 避免焦点在此组件上 |
| troughcolor | 1. 指定凹槽的颜色 2. 默认值由系统指定 |
| width | 1. 指定滚动条的宽度 2. 默认值是 16 像素 |
activate(element)
-- 显示 element 参数指定的元素的背景颜色和样式
-- element 参数可以设置为:"arrow1"(箭头1),"arrow2"(箭头2)或 "slider"(滑块)
delta(deltax, deltay)
-- 给定一个鼠标移动的范围 deltax 和 deltay(像素为单位,deltax 表示水平移动量,deltay 表示垂直移动量),然后该方法返回一个浮点类型的值(范围 -1.0 ~ 1.0)
-- 这通常在鼠标绑定上使用,用于确定当用户拖拽鼠标时滑块的如何移动
fraction(x, y)
-- 给定一个像素坐标 (x, y),该方法返回最接近给定坐标的滚动条位置(范围 0.0 ~ 1.0)
get()
-- 返回当前滑块的位置 (a, b)
-- a 值表示当前滑块的顶端或左端的位置,b 值表示当前滑块的底端或右端的位置(范围 0.0 ~ 1.0)
identify(x, y)
-- 返回一个字符串表示指定位置下(如果有的话)的滚动条部件
-- 返回值可以是:"arrow1"(箭头1),"arrow2"(箭头2)、"slider"(滑块)或 ""(啥都没有)
set(*args)
-- 设置当前滚动条的位置
-- 如果设置则需要两个参数 (first, last),first 表示当前滑块的顶端或左端的位置,last 表示当前滑块的底端或右端的位置(范围 0.0 ~ 1.0)
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
内容介绍Python中插入图片绘制子图绘制1*2的子图绘制2*2的子图绘制不规则子图绘制图中代码frommatplotlibimportpyplotaspltplt.style.use('
内容介绍format方式其他扩展写法%方式总结format方式{:>}靠右对齐print('{0:>5}'.format('aa'))#占5个字符空间,0是format参数中的变量索引>
python怎样实现遍历磁盘目录?一些Python新手对于如何便利磁盘不是很清楚,因此这篇文章就给大家介绍一下使用深度遍历,用栈遍历和广度遍历磁盘,需要的朋友可以参考学习。
这篇文章主要介绍了通过Pygame模块实现监听鼠标的功能,文章的示例代码讲解详细,对我们的学习或工作有一定的价值,感兴趣的小伙伴可以了解一下
大家都知道concat()函数可以沿着一条轴将多个对象进行堆叠,其使用方式类似数据库中的数据表合并,在使用merge()函数进行合并时,默认会使用重叠的列索引做为合并键,即取行索引重叠的部分,本文给大家介绍python 数据合并concat函数与merge函数,感兴趣的朋友一起看看吧
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 ICP核准(ICP备案)粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008