21_组件Spinbox

Spinbox

输入框
类似于Entry,但可以选择固定的值
import tkinter as tk

window = tk.Tk()
window.title('hello thinter')
height= window.winfo_screenheight()
width= window.winfo_screenwidth()
window.geometry('400x300+%d+%d'%((width-400)/2,(height-300)/2))

w = tk.Spinbox(window, from_=0, to=10)  # 指定范围
# w = tk.Spinbox(window, values=(10,20,30,40,50,60))    # 固定几个值
w.pack()

window.mainloop()
选项 含义
buttonbackground 设置箭头背景颜色
buttoncursor 设置鼠标在箭头上时,鼠标样式
buttonuprelief、buttondownrelief 1,指定向上,下调节箭头的样式
2,默i认值"raised”,其他值"flat","sunken","groove","ridge"
command 指定调节箭头关联的函数,点击箭头时触发
format 1,设置选择数值的样式(from_和to 指定范围,手动输入的不算)
2,例:format=%10.4f,显示的数值占10位,小数点保留4位
from_、to 限定输入内容方式一,from_ 和 to 共同指定一个范围数值
2,increment选项设置每次点击调节箭头递增(递减)的精度
increment 1,设置每次点击调节箭头的时候递增(递减)的精度
2,例:from_=1,to=10,increment=0.5,每次点击箭头,框中数字变化 0.5
values 限定输入内容方式二,将可选值以元组的形式赋值给values选项
2,例:values=("a","b","c")则允许在这3个字符串中选择
wrap 设置点击箭头调节数值是否循环,默认False
xscrollcommand 与scrollbar(滚动条)组件相关联
invalidcommand、invcmd 其他选项,参考Entry,Text等

bbox()

bbox(index)
返回一个 4 元组(x1, y1, x2, y2)用于描述输入框中 index 参数指定的字符所在的矩形范围

delete()

delete(first, last=None)
删除参数 first 到 last 范围内(包含 first 和 last)的所有内容
如果忽略 last 参数,表示删除 first 参数指定的选项
使用 delete(0, "end") 实现删除输入框的所有内容

get()

返回 Spinbox 当前的值

icursor()

icursor(index)
将光标移动到 index 参数指定的位置
这同时也会设置 "insert" 的值

identify()

identify(x, y)
返回给定坐标(x, y)在 Spinbox 中对应的元素名字
返回值可以是:"none"(什么都不是),"buttondown"(向下调节箭头),"buttonup"(向上调节箭头)或 "entry"(输入框)

index()

index(index)
返回与 index 参数相应的选项的序号(例如 e.index("end"))

insert()

insert(index, text)
将 text 参数的内容插入到 index 参数指定的位置
使用 insert("insert", text) 将 text 参数指定的字符串插入到光标的位置
使用 insert("end", text) 将 text 参数指定的字符串插入到输入框的末尾

invoke()

invoke(element)
调用该方法的效果相当于用户点击调节箭头
element 参数的值必须是 "buttonup" 或 "buttondown"

scan_mark()

scan_mark(x),scan_dragto(x)
使用这种方式来实现输入框内容的滚动
需要将鼠标按下事件绑定到 scan_mark(x) 方法(x 是鼠标当前的水平位置),然后再将 <motion> 事件绑定到 scan_dragto(x) 方法(x 是鼠标当前的水平位置),就可以实现输入框在当前位置和 sacn_mack(x) 指定位置之间的水平滚动

selection()

selection('from', index)
设置选中范围的起始位置是 index 参数指定的值

selection('to', index)
设置选中范围的结束位置是 index 参数指定的值

selection('range', start, end)
设置选中范围是 statr 到 end 参数之间的值

selection_adjust()

selection_adjust(index)
该方法是为了确保输入框中选中的范围包含 index 参数所指定的字符
如果选中的范围已经包含了该字符,那么什么事情也不会发生
如果选中的范围不包含该字符,那么会从光标的位置将选中的范围扩展至该字符

selection_clear()

取消选中状态

selection_element()

selection_element(element=None)
该方法用于“设置”或“获取”选择范围
如果给 element 参数赋值,那么表示设置选择范围
否则表示获得当前的选择范围
posted @ 2022-10-09 10:25  interesting5319  阅读(76)  评论(0)    收藏  举报