tkinker组件 Spinbox

Spinbox 组件类似于Entry,但可以选择固定的值

  • 创建Spinbox输入框
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.pack()


window.mainloop()
image.png
  • 指定数据
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, values=(10,20,30,40,50,60))
w.pack()
window.mainloop()

参数

Spinbox(master=None, **options) (class)

master -- 父组件

**options -- 组件选项,下方表格详细列举了各个选项的具体含义和用法:

image.png
image.png
image.png
image.png
image.png

方法

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

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

get()
-- 返回 Spinbox 当前的值

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

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

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

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

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

scan_dragto(x)
-- 见下方 scan_mark(x)

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

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

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

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

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

selection_clear()
-- 取消选中状态

selection_element(element=None)
-- 该方法用于“设置”或“获取”选择范围
-- 如果给 element 参数赋值,那么表示设置选择范围
-- 否则表示获得当前的选择范围

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Entry(输入框) 组件通常用于获取用户的输入文本。相当于html中的input Entry 组件仅允许用于输入...
    HC2阅读 292评论 0 1
  • Spinbox Spinbox 组件(Tk8.4 新增)是 Entry 组件的变体,用于从一些固定的值中选取一个。...
    GaoYuan117阅读 1,394评论 0 0
  • Text Text(文本)组件用于显示和处理多行文本。在 Tkinter 的所有组件中,Text 组件显得异常强大...
    GaoYuan117阅读 27,464评论 0 3
  • Canvas Canvas(画布)组件为 Tkinter 的图形绘制提供了基础。Canvas 是一个高度灵活的组件...
    GaoYuan117阅读 2,078评论 0 0
  • 一、介绍 Entry 组件仅允许用于输入一行文本,如果用于输入的字符串长度比该组件可显示空间更长,那内容将被滚动。...
    520bunana阅读 468评论 0 1