如何将值注册到ttk.数字调整框通过键盘输入?

2024-10-01 07:45:50 发布

您现在位置:Python中文网/ 问答频道 /正文

ttk.Spinbox小部件是否允许用户在其输入字段中键入值并进行注册?如果是,我该怎么做?在

我知道可以在ttk.数字调整框的textvariable来更改其值。但这不是我想的。相反,我只想允许用户单击ttk.Spinboxttk.Entry小部件,并在那里手动输入值,并将其注册到其textvariable。现在,我可以在那里输入值,但是当我按Return键时,什么也不会发生。在

谢谢。在


Tags: 用户键入return部件数字手动entryttk
1条回答
网友
1楼 · 发布于 2024-10-01 07:45:50

Can a ttk.Spinbox widget allow a user to type in values to it's entry field and have it registered? If so, how can I do so?

如果将变量与textvariable属性相关联,则无需执行其他操作。无论何时用户更改值,无论是通过箭头还是通过键入小部件的可编辑部分,变量中的值都将立即更新。在

您可以通过创建一个与同一变量相关联的数字调整框和标签来验证这一点。然后,您可以在编辑数字调整框时看到标签正在实时更新。在

示例:

import tkinter as tk
from tkinter import ttk

root = tk.Tk()
spinvar = tk.IntVar()
spinbox = ttk.Spinbox(root, from_=0, to=100, textvariable=spinvar)
label = ttk.Label(root, textvariable=spinvar)
spinbox.pack()
label.pack()

root.mainloop()

Presently, I can type in values there but nothing happens when I press the Return key.

如果您希望在用户按下<Return>键时发生一些事情,您必须添加一个绑定来调用函数。在

示例:

^{pr2}$

相关问题 更多 >