摘要:已獲原作者授權(quán)原系列地址簡介中的控件是一種可供用戶通過拖動指示器改變變量值的控件這種控件可以水平放置也可以豎直放置可以在用戶界面中放置一個控件用戶通過拖動該控件就可以在某個取值范圍內(nèi)選擇一個合適的值控件可以設(shè)置最大最小值以確定取值范圍我們也
已獲原作者授權(quán). 原系列地址: Python Tkinter簡介
Tkinter 中的 Scale 控件是一種可供用戶通過拖動指示器改變變量值的控件. 這種控件可以水平放置, 也可以豎直放置.
可以在用戶界面中放置一個 Scale 控件, 用戶通過拖動該控件就可以在某個取值范圍內(nèi)選擇一個合適的值. Scale 控件可以設(shè)置最大最小值以確定取值范圍. 我們也可以改變 Scale 控件的放置方式, 使其水平或豎直放置. 當(dāng)需要用戶在一個范圍內(nèi)選擇一個值時, Scale 控件比 Entry 控件更合適.
from Tkinter import * master = Tk() w = Scale(master, from_=0, to=42) w.pack() w = Scale(master, from_=0, to=200, orient=HORIZONTAL) w.pack() mainloop()
上例運行后, 我們會看到一個水平的拖動條和一個豎直的拖動條:
上例中我們已經(jīng)闡釋了如何創(chuàng)建 Scale 控件. 但這還不夠, 我們還需要取到控件當(dāng)前的變量值. 使用 get() 方法即可. 我們擴展了上面的例子, 添加一個按鈕, 當(dāng)按鈕被點擊時, 兩個拖動條的變量值都會在終端中打印出來:
from Tkinter import * def show_values(): print (w1.get(), w2.get()) master = Tk() w1 = Scale(master, from_=0, to=42) w1.pack() w2 = Scale(master, from_=0, to=200, orient=HORIZONTAL) w2.pack() Button(master, text="Show", command=show_values).pack() mainloop()初始化 Scale 控件
Scale 控件在剛剛被創(chuàng)建時, 其值被設(shè)置為其最小值, 在上面的例子中這個值為 0. 通過 set() 方法, 我們可以給 Scale 賦值:
from Tkinter import * def show_values(): print (w1.get(), w2.get()) master = Tk() w1 = Scale(master, from_=0, to=42) w1.set(19) w1.pack() w2 = Scale(master, from_=0, to=200, orient=HORIZONTAL) w2.set(23) w2.pack() Button(master, text="Show", command=show_values).pack() mainloop()
上面的代碼在創(chuàng)建時會顯示如下窗口:
如果 Scale 控件的 tickinterval 選項被設(shè)置為一個數(shù)值, 拖動時的選擇值將會變?yōu)樵摂?shù)值的倍數(shù). 我們?yōu)橹暗睦蛹尤脒@個參數(shù):
from Tkinter import * def show_values(): print (w1.get(), w2.get()) master = Tk() w1 = Scale(master, from_=0, to=42, tickinterval=8) w1.set(19) w1.pack() w2 = Scale(master, from_=0, to=200,tickinterval=10, orient=HORIZONTAL) w2.set(23) w2.pack() Button(master, text="Show", command=show_values).pack() mainloop()
這個程序運行后, 豎直方向的拖動條會產(chǎn)生 0, 8, 16, 24, 32, 40 這些值, 并在左側(cè)顯示. 水平方向的拖動條產(chǎn)生 0, 10, 20, 30 ... 這些值, 并在底部顯示. 但我們無法看到底部顯示的那些數(shù)值, 因為這些數(shù)字彼此疊加在一起了. 這是因為拖動條不夠長:
要解決這個問題, 我們需要增加水平拖動條的長度. 通過設(shè)置 length 選項可以實現(xiàn)這點. 在 Scale 控件被豎直放置時, length 參數(shù)表示拖動條高度; 在 Scale 控件被水平放置時, length 參數(shù)表示拖動條長度. 因此我們重寫了創(chuàng)建上例中 w2 這個拖動條的代碼:
w2 = Scale(master, from_=0, to=200, length=600,tickinterval=10, orient=HORIZONTAL)
經(jīng)過修改后的程序運行后顯示如下:
全系列:
[譯][Tkinter 教程01] 入門: Label 控件
[譯][Tkinter 教程02] Message 控件
[譯][Tkinter 教程03] Button 控件
[譯][Tkinter 教程04] Variable 類
[譯][Tinkter 教程05] Radiobutton 控件
[譯][Tkinter 教程06] Checkbox 控件
[譯][Tkinter 教程07] Entry 控件
[譯][Tkinter 教程08] Canvas 圖形繪制
[譯][Tkinter 教程09] Scale 控件
[譯][Tkinter 教程10] Text 控件
[譯][Tkinter 教程11] 對話框和消息框
[譯][Tkinter 教程12] 布局管理 (Pack Place Grid)
[譯][Tkinter 教程13] Mastermind 游戲
[譯][Tkinter 教程14] menu 菜單
[譯][Tkinter 教程15] event 事件綁定
譯者水平有限, 如有疏漏, 歡迎指正.
已獲得原作者授權(quán). 原文地址: Sliders.
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/41509.html
摘要:已獲原作者授權(quán)原系列地址簡介控件是一種標(biāo)準(zhǔn)控件用來展現(xiàn)不同樣式的按鈕控件被用以和用戶交互比如按鈕被鼠標(biāo)點擊后某種操作被啟動和控件類似按鈕可以展示圖片或者文字不同的是控件可以指定字體控件只能使用單一的字體上的文字可以多行顯示可以將一個函數(shù)或方 已獲原作者授權(quán). 原系列地址: Python Tkinter 簡介 Button 控件是一種標(biāo)準(zhǔn) Tkinter 控件, 用來展現(xiàn)不同樣式的按鈕...
摘要:已獲原作者授權(quán)原系列地址類有些控件比如控件控件等可以通過傳入特定參數(shù)直接和一個程序變量綁定這些參數(shù)包括這種綁定是雙向的如果該變量發(fā)生改變與該變量綁定的控件也會隨之更新這些控制變量和一般的變量一樣都是用來保存某個值的但一般的變量不能被傳遞給或 已獲原作者授權(quán). 原系列地址: Python Tkinter Variable 類 有些控件 (比如 Entry 控件, Radiobutton...
摘要:已獲原作者授權(quán)原系列地址簡介一提到這個詞很多人首先想到的是餐館里的菜單雖然餐館菜單和計算機程序中的菜單看起來一點也不像但他們確實有很多共同點在餐館中菜單列舉了所有菜品和飲料在計算機程序中菜單通過圖形界面展示了應(yīng)用程序可用的命令和功能在用戶界 已獲原作者授權(quán). 原系列地址: Python Tkinter 簡介 一提到menu這個詞, 很多人首先想到的是餐館里的菜單. 雖然餐館菜單和計算...
摘要:已獲原作者授權(quán)原系列地址控件控件用來展示一些文字短消息和控件有些類似但在展示文字方面比要靈活比如控件可以改變字體而控件只能使用一種字體它提供了一個換行對象以使文字可以斷為多行它可以支持文字的自動換行及對齊這里要澄清一下前面提到的控件可以改變 已獲原作者授權(quán). 原系列地址: Python Tkinter Message 控件 Message 控件用來展示一些文字短消息. Message...
摘要:已獲原作者授權(quán)原系列地址單選按鈕是一種可在多個預(yù)先定義的選項中選擇出一項的控件單選按鈕可顯示文字或圖片顯示文字時只能使用預(yù)設(shè)字體該控件可以綁定一個函數(shù)或方法當(dāng)單選按鈕被選擇時該函數(shù)或方法將被調(diào)用單選按鈕這個名字來源于收音機上的調(diào)頻按鈕這些按 已獲原作者授權(quán). 原系列地址: Python Tkinter Radio Buttons 單選按鈕是一種可在多個預(yù)先定義的選項中選擇出一項的 T...
閱讀 2931·2021-11-23 09:51
閱讀 3178·2021-11-12 10:36
閱讀 3214·2021-09-27 13:37
閱讀 3168·2021-08-17 10:15
閱讀 2596·2019-08-30 15:55
閱讀 2757·2019-08-30 13:07
閱讀 800·2019-08-29 16:32
閱讀 2655·2019-08-26 12:00