网站首页 > 技术文章 正文
在本教程中,将介绍如何创建 Tkinter Spinbox 微调框小部件。
Python 中 Tkinter 中的 Spinbox 小部件用于从指定的给定值范围内选择一个值。
此外,可以直接在 Spinbox 小组件中输入值,就像使用单行文本框小组件一样。

要创建 Spinbox 小部件,请使用构造函数:
tk.Spinbox(master, from_, to, **options)
其中,使用 from_ 和 to 选项指定滑块的最小值和最大值。
获取当前值
要获取 Spinbox 的当前值,可以使用 textvariable。例如:
current_value = tk.StringVar(value=0)
spinbox = tk.Spinbox(
root,
from_=0,
to=10,
textvariable=current_value,
wrap=True)
spinbox.pack()
在此示例中,使用 current_value 保存 Spinbox 小组件的当前值。可以通过调用 get() 方法来获取它:
current_value.get()
还可以使用 Spinbox 对象的方法 get() 获取:
spinbox.get()
Spinbox 允许使用列表或元组设置输入的值。
import tkinter as tk
root = tk.Tk()
root.geometry('600x400+200+200')
root.title('Spinbox 微调框演示')
def value_changed():
print(current_value1.get())
print(current_value2.get())
current_value1 = tk.StringVar(value=0)
spinbox1 = tk.Spinbox(
root,
from_=0,
to=10,
textvariable=current_value1,
command=value_changed,
wrap=True)
spinbox1.pack(padx=10, pady=10)
current_value2 = tk.StringVar(value=0)
day=('Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday')
spinbox2 = tk.Spinbox(
root,
from_=0,
to=10,
values = day,
textvariable=current_value2,
command=value_changed,
wrap=True)
spinbox2.pack(padx=10, pady=10)
root.mainloop()

调用函数
要在 Spinbox 的值更改时执行函数,可以将该函数分配给选项:command
def value_changed():
print(current_value.get())
current_value = tk.StringVar(value=0)
spinbox = tk.Spinbox(
root,
from_=0,
to=10,
textvariable=current_value,
command=value_changed,
wrap=True)
spinbox.pack()
Spinbox 常用选项
选项 | 说明 |
command | 更改时要调用的函数 |
format | 格式化字符串 |
from_ | 指定最小值。 |
justify | 控制文本的对齐方式:CENTER、LEFT 或 RIGHT。 |
state | 表示 widget 的状态,其默认值为 NORMAL。 |
textvariable | 用于控制小部件文本的行为。 |
to | 指定最大值 |
values | 使用元组指定值 |
wrap | 选择值时是否循环显示。 |
Spinbox 常用方法
方法 | 说明 |
delete(startindex, endindex) | 删除指定范围内的字符 |
get(startindex, endindex) | 获取指定范围内的字符 |
identify(x, y) | 标识指定范围内的字符 |
index(index) | 获取给定索引的值 |
insert(index, string) | 将字符串插入到指定的索引处 |
invoke(element) | 用于调用关联的回调 |
猜你喜欢
- 2024-12-16 python GUI编程:Canvas组件
- 2024-12-16 Python GUI项目实战(三)实现信息查询功能
- 2024-12-16 如何用python做一个简单的输入输出交互界面?
- 2024-12-16 Python GUI 编程:tkinter 初学者入门指南——按钮
- 2024-12-16 Python GUI 编程:tkinter 初学者入门指南——复选框
- 2024-12-16 python GUI编程:Button组件
- 2024-12-16 Python GUI项目实战(八)修改密码
- 2024-12-16 学习编程第163天 python编程 GUI窗体最简单的可视界面
- 2024-12-16 推荐一款Python的GUI可视化工具
- 2024-12-16 python使用tkinter进行桌面GUI开发简单介绍
- 05-25Python 3.14 t-string 要来了,它与 f-string 有何不同?
- 05-25Python基础元素语法总结
- 05-25Python中的变量是什么东西?
- 05-25新手常见的python报错及解决方案
- 05-2511-Python变量
- 05-2510个每个人都是需要知道Python问题
- 05-25Python编程:轻松掌握函数定义、类型及其参数传递方式
- 05-25Python基础语法
- 257℃Python短文,Python中的嵌套条件语句(六)
- 257℃python笔记:for循环嵌套。end=""的作用,图形打印
- 256℃PythonNet:实现Python与.Net代码相互调用!
- 251℃Python操作Sqlserver数据库(多库同时异步执行:增删改查)
- 251℃Python实现字符串小写转大写并写入文件
- 106℃原来2025是完美的平方年,一起探索六种平方的算吧
- 90℃Python 和 JavaScript 终于联姻了!PythonMonkey 要火?
- 81℃Ollama v0.4.5-v0.4.7 更新集合:Ollama Python 库改进、新模型支持
- 最近发表
- 标签列表
-
- python中类 (31)
- python 迭代 (34)
- python 小写 (35)
- python怎么输出 (33)
- python 日志 (35)
- python语音 (31)
- python 工程师 (34)
- python3 安装 (31)
- python音乐 (31)
- 安卓 python (32)
- python 小游戏 (32)
- python 安卓 (31)
- python聚类 (34)
- python向量 (31)
- python大全 (31)
- python次方 (33)
- python桌面 (32)
- python总结 (34)
- python浏览器 (32)
- python 请求 (32)
- python 前端 (32)
- python验证码 (33)
- python 题目 (32)
- python 文件写 (33)
- python中的用法 (32)