Tkinter?組件Scrollbar的具體使用
Scrollbar(滾動條)組件用于滾動一些組件的可見范圍,根據(jù)方向可分為垂直滾動條和水平滾動條。Scrollbar 組件常常被用于實(shí)現(xiàn)文本、畫布和列表框的滾動。
何時使用 Scrollbar 組件?
Scrollbar 組件通常幾乎與 Text 組件、Canvas 組件和 Listbox 組件一起使用,水平滾動條還能跟 Entry 組件配合。
用法
下邊例子我們演示如何使用垂直滾動條。為了在某個組件上安裝垂直滾動條,你需要做兩件事:
1. 設(shè)置該組件的 yscrollbarcommand 選項(xiàng)為 Scrollbar 組件的 set() 方法;
2. 設(shè)置 Scrollbar 組件的 command 選項(xiàng)為該組件的 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()
分析:當(dāng) Listbox 組件的可視范圍發(fā)生改變的時候,Listbox 組件通過調(diào)用 set() 方法通知 Scrollbar 組件。而當(dāng)用戶操縱滾動條的時候,將自動調(diào)用 Listbox 組件的 yview() 方法。
添加水平滾動條方法跟上邊一樣,只是將 yscrollcommand 改為 xscrollcommand,yview 改為 xview 即可。
參數(shù)
Scrollbar(master=None, **options) (class)
master -- 父組件
**options -- 組件選項(xiàng),下方表格詳細(xì)列舉了各個選項(xiàng)的具體含義和用法:
選項(xiàng) | 含義 |
activebackground | 1. 指定當(dāng)鼠標(biāo)在上方飄過的時候滑塊和箭頭的背景顏色 2. 默認(rèn)值由系統(tǒng)指定 |
activerelief | 1. 指定當(dāng)鼠標(biāo)在上方飄過的時候滑塊的樣式 2. 默認(rèn)值是 "raised" 3. 可以選擇 "flat","sunken","groove","ridge" |
background | 1. 指定背景顏色 2. 默認(rèn)值由系統(tǒng)指定 |
bg | 跟 background 一樣 |
borderwidth | 1. 指定邊框?qū)挾?br />2. 默認(rèn)值是 0 |
bd | 跟 borderwidth 一樣 |
command | 1. 當(dāng)滾動條更新時回調(diào)的函數(shù) 2. 通常的是指定對應(yīng)組件的 xview() 或 yview() 方法 |
cursor | 1. 指定當(dāng)鼠標(biāo)在上方飄過的時候的鼠標(biāo)樣式 2. 默認(rèn)值由系統(tǒng)指定 |
elementborderwidth | 1. 指定滾動條和箭頭的邊框?qū)挾?br />2. 默認(rèn)值是 -1(表示使用 borderwidth 選項(xiàng)的值) |
highlightbackground | 1. 指定當(dāng)滾動條沒有獲得焦點(diǎn)的時候高亮邊框的顏色 2. 默認(rèn)值由系統(tǒng)指定 |
highlightcolor | 1. 指定當(dāng)滾動條獲得焦點(diǎn)的時候高亮邊框的顏色 2. 默認(rèn)值由系統(tǒng)指定 |
highlightthickness | 1. 指定高亮邊框的寬度 2. 默認(rèn)值是 0(不帶高亮邊框) |
jump | 1. 指定當(dāng)用戶拖拽滾動條時的行為 2. 默認(rèn)值是 False,滾動條的任何一絲變動都會即刻調(diào)用 command 選項(xiàng)指定的回調(diào)函數(shù) 3. 設(shè)置為 True 則當(dāng)用戶松開鼠標(biāo)才調(diào)用 |
orient | 1. 指定繪制 "horizontal"(垂直滾動條)還是 "vertical"(水平滾動條) 2. 默認(rèn)值是 VERTICAL |
relief | 1. 指定邊框樣式 2. 默認(rèn)值是 "sunken" 3. 可以選擇 "flat","raised","groove","ridge" |
repeatdelay | 1. 該選項(xiàng)指定鼠標(biāo)左鍵點(diǎn)擊滾動條凹槽的響應(yīng)時間 2. 默認(rèn)值是 300(毫秒) |
repeatinterval | 1. 該選項(xiàng)指定鼠標(biāo)左鍵緊按滾動條凹槽時的響應(yīng)間隔 2. 默認(rèn)值是 100(毫秒) |
takefocus | 1. 指定使用 Tab 鍵可以將焦點(diǎn)移到該 Scrollbar 組件上 2. 默認(rèn)是開啟的,可以將該選項(xiàng)設(shè)置為 False 避免焦點(diǎn)在此組件上 |
troughcolor | 1. 指定凹槽的顏色 2. 默認(rèn)值由系統(tǒng)指定 |
width | 1. 指定滾動條的寬度 2. 默認(rèn)值是 16 像素 |
方法
activate(element)
-- 顯示 element 參數(shù)指定的元素的背景顏色和樣式
-- element 參數(shù)可以設(shè)置為:"arrow1"(箭頭1),"arrow2"(箭頭2)或 "slider"(滑塊)
delta(deltax, deltay)
-- 給定一個鼠標(biāo)移動的范圍 deltax 和 deltay(像素為單位,deltax 表示水平移動量,deltay 表示垂直移動量),然后該方法返回一個浮點(diǎn)類型的值(范圍 -1.0 ~ 1.0)
-- 這通常在鼠標(biāo)綁定上使用,用于確定當(dāng)用戶拖拽鼠標(biāo)時滑塊的如何移動
fraction(x, y)
-- 給定一個像素坐標(biāo) (x, y),該方法返回最接近給定坐標(biāo)的滾動條位置(范圍 0.0 ~ 1.0)
get()
-- 返回當(dāng)前滑塊的位置 (a, b)
-- a 值表示當(dāng)前滑塊的頂端或左端的位置,b 值表示當(dāng)前滑塊的底端或右端的位置(范圍 0.0 ~ 1.0)
identify(x, y)
-- 返回一個字符串表示指定位置下(如果有的話)的滾動條部件
-- 返回值可以是:"arrow1"(箭頭1),"arrow2"(箭頭2)、"slider"(滑塊)或 ""(啥都沒有)
set(*args)
-- 設(shè)置當(dāng)前滾動條的位置
-- 如果設(shè)置則需要兩個參數(shù) (first, last),first 表示當(dāng)前滑塊的頂端或左端的位置,last 表示當(dāng)前滑塊的底端或右端的位置(范圍 0.0 ~ 1.0)
到此這篇關(guān)于Tkinter 組件Scrollbar的具體使用的文章就介紹到這了,更多相關(guān)Tkinter Scrollbar內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Pandas常用的數(shù)據(jù)結(jié)構(gòu)和常用的數(shù)據(jù)分析技術(shù)
Pandas是Python中用于數(shù)據(jù)處理和分析的強(qiáng)大庫,其最常用的數(shù)據(jù)結(jié)構(gòu)是Series和DataFrame。Series類似于一維數(shù)組,可以表示一列數(shù)據(jù);DataFrame類似于二維表格,可以表示多列數(shù)據(jù)2023-04-04使用python刪除nginx緩存文件示例(python文件操作)
這篇文章主要介紹了使用python刪除nginx緩存文件示例(python文件操作),需要的朋友可以參考下2014-03-03詳解Python如何利用pymysql封裝項(xiàng)目通用的連接和查詢
一個項(xiàng)目通常都需要有數(shù)據(jù)庫,本文就來為大家詳細(xì)講講Python如何利用pymysql簡單分裝一個通用的連接,關(guān)閉和查詢,需要的可以參考一下2022-07-07python list中append()與extend()用法分享
列表是以類的形式實(shí)現(xiàn)的?!皠?chuàng)建”列表實(shí)際上是將一個類實(shí)例化。因此,列表有多種方法可以操作2013-03-03