Tkinter 组件Scrollbar的具体使用

目录
  • 何时使用 Scrollbar 组件?
  • 用法
  • 参数
  • 方法

Scrollbar(滚动条)组件用于滚动一些组件的可见范围,根据方向可分为垂直滚动条和水平滚动条。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)

到此这篇关于Tkinter 组件Scrollbar的具体使用的文章就介绍到这了,更多相关Tkinter Scrollbar内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Tkinter组件Entry的具体使用

    目录 何时使用 Entry 组件? 用法 参数 方法 关于验证详解 Entry(输入框)组件通常用于获取用户的输入文本. 何时使用 Entry 组件? Entry 组件仅允许用于输入一行文本,如果用于输入的字符串长度比该组件可显示空间更长,那内容将被滚动.这意味着该字符串将不能被全部看到(你可以用鼠标或键盘的方向键调整文本的可见范围). 如果你希望接收多行文本的输入,可以使用 Text 组件(后面介绍). 用法 使用代码为 Entry 组件添加文本,可以使用 insert() 方法.如果要替换当

  • Tkinter组件实现Radiobutton的示例

    目录 何时使用 Radiobutton 组件? 用法 参数 方法 Radiobutton(单选按钮)组件用于实现多选一的问题.Radiobutton 组件可以包含文本或图像,每一个按钮都可以与一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行. Radiobutton 组件仅能显示单一字体的文本,但文本可以跨越多行.另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键).默认情况下,tab 按键被用于在按钮间切换. 每一组 Radiobutton

  • python tkinter组件使用详解

    这篇文章主要介绍了python tkinter组件使用详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.按钮 # 按钮 # bg设置背景色 btn = tkinter.Button(root,text = '按钮',bg = 'red') btn.pack() # fg设置前景色(文字颜色) btn1 = tkinter.Button(root,text = '按钮',fg = 'blue') btn1.pack() # font设置字体

  • 对Python中TKinter模块中的Label组件实例详解

    Python2.7.4 OS-W7x86 1. 简介 Label用于在指定的窗口中显示文本和图像.最终呈现出的Label是由背景和前景叠加构成的内容. Label组件定义函数:Label(master=None, cnf={}, **kw) 其中,kw参数是用来自定义lable组件的键值对. 2. 背景自定义 背景的话,有三部分构成:内容区+填充区+边框 <1>内容区参数有:width,length用于指定区域大小,如果显示前景内容是文本,则以单个字符大小为单位:如果显示的是图像,则以像素为单

  • Tkinter组件Checkbutton的具体使用

    目录 何时使用 Checkbutton 组件? 用法 参数 方法 Checkbutton(多选按钮)组件用于实现确定是否选择的按钮.Checkbutton 组件可以包含文本或图像,你可以将一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行. Checkbutton 组件仅能显示单一字体的文本,但文本可以跨越多行.另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键).默认情况下,tab 按键被用于在按钮间切换. 何时使用 Checkbutton 组

  • Tkinter canvas的画布参数,删除组件,添加垂直滚动条详解

    目录 1.画布 Canvas的参数 2.删除鼠标下的组件 3.带垂直滚动条的画布 总结 1.画布 Canvas的参数 from tkinter import * win = Tk() win.geometry('500x500+500+100') canvas = Canvas( master=win, # 父控件 bg='orange', # 背景颜色 bd=2, # 边框宽度 closeenough=1, # 当鼠标与画布上组件的距离小于该值时,认为鼠标在该组件上,是一个浮点型的值 curs

  • python tkinter组件摆放方式详解

    1.最小界面组成 # 导入tkinter模块 import tkinter # 创建主窗口对象 root = tkinter.Tk() # 设置窗口大小(最小值:像素) root.minsize(300,300) # 创建一个按钮组件 btn = tkinter.Button(root,text = '屠龙宝刀,点击送') btn.pack() # 加入消息循环 root.mainloop() 设置初始化界面大小 # 设置初始化界面大小 root.geometry('300x400') 2.组件

  • Python Tkinter Menu组件详解

    目录 何时使用 Menu 组件? 用法 参数 方法 add_cascade(**options) add_checkbutton(**options) add_command(**options) add_radiobutton(**options) add_separator(**options) delete(index1, index2=None) entrycget(index, option) entryconfig(index, **options) entryconfigure(i

  • Tkinter 组件Scrollbar的具体使用

    目录 何时使用 Scrollbar 组件? 用法 参数 方法 Scrollbar(滚动条)组件用于滚动一些组件的可见范围,根据方向可分为垂直滚动条和水平滚动条.Scrollbar 组件常常被用于实现文本.画布和列表框的滚动. 何时使用 Scrollbar 组件? Scrollbar 组件通常几乎与 Text 组件.Canvas 组件和 Listbox 组件一起使用,水平滚动条还能跟 Entry组件配合. 用法 下边例子我们演示如何使用垂直滚动条.为了在某个组件上安装垂直滚动条,你需要做两件事:

  • Python中Tkinter组件Listbox的具体使用

    目录 何时使用 Listbox 组件? 用法 参数 方法 Listbox(列表框)组件用于显示一个选择列表.Listbox 只能包含文本项目,并且所有的项目都需要使用相同的字体和颜色.根据组件的配置,用户可以从列表中选择一个或多个选项. 何时使用 Listbox 组件? Listbox 组件通常被用于显示一组文本选项,Listbox 组件跟 Checkbutton和 Radiobutton组件类似,不过 Listbox 是以列表的形式来提供选项的(后两个是通过按钮的形式). 用法 当你创建一个

  • Python中Tkinter组件Menu的具体使用

    目录 何时使用 Menu 组件? 用法 参数 方法 Menu(菜单)组件用于实现顶级菜单.下拉菜单和弹出菜单. 何时使用 Menu 组件? Menu 组件通常被用于实现应用程序上的各种菜单,由于该组件是底层代码实现,所以不建议你自行通过按钮和其他组件来实现菜单功能. 用法 创建一个顶级菜单,你需要先创建一个菜单实例,然后使用 add() 方法将命令和其它子菜单添加进去: import tkinter as tk root = tk.Tk() def callback(): print("~被调用

  • Python中Tkinter组件Frame的具体使用

    目录 何时使用 Frame 组件? 用法 参数 Frame(框架)组件是在屏幕上的一个矩形区域.Frame 主要是作为其他组件的框架基础,或为其他组件提供间距填充. 何时使用 Frame 组件? Frame 组件主要用于在复杂的布局中将其他组件分组,也用于填充间距和作为实现高级组件的基类. 用法 Frame 组件可以用于装饰界面: import tkinter as tk master = tk.Tk() tk.Label(text="天王盖地虎").pack() separator

  • Python中Tkinter组件Button的具体使用

    目录 简介 何时使用 Button 组件? 用法 参数 方法 简介 Button(按钮)组件用于实现各种各样的按钮.Button 组件可以包含文本或图像,你可以将一个 Python 的函数或方法与之相关联,当按钮被按下时,对应的函数或方法将被自动执行. Button 组件仅能显示单一字体的文本,但文本可以跨越多行.另外,还可以为其中的个别字符加上下划线(例如用于表示键盘快捷键).默认情况下,tab 按键被用于在按钮间切换. 何时使用 Button 组件? 简而言之,Button 组件是用于让用户

随机推荐