validation - 使用 tkinter 对整数和浮点值进行条目小部件验证
问题描述
所以我有一些代码可用于验证条目小部件,以便只能输入整数值。我想达到相同的效果,但整数值和浮点值都被排除在外,而不是只有整数值。
from tkinter import *
root = Tk()
def testVal(inp,acttyp):
if acttyp == '1': #insert
if not inp.isdigit():
return False
return True
entry = Entry(root, validate="key")
entry['validatecommand'] = (entry.register(testVal),'%P','%d')
entry.pack()
root.mainloop()
解决方案
您可以简单地调用float()
输入文本来确定它是整数还是浮点数:
from tkinter import *
def validate_entry(inp):
try:
float(inp)
except:
return False
return True
root = Tk()
Entry(root, validate='key', vcmd=(root.register(validate_entry), '%P')).pack()
root.mainloop()
推荐阅读
- amazon-web-services - 在 Node 中查找与已知公共 IP 地址关联的 EC2 资源 ID
- python - 出现错误:AttributeError: 'Node' object has no attribute 'output_masks' at flatten layer 用于展平嵌入输出
- c# - EFCore 跟踪记录状态:IsNew/IsLoaded
- node.js - NodeJs/Express Puppeteer 启动本地视图
- android - 如何更改编辑文本的选择颜色?
- azure - 数据工厂 DevOps SSIS-IntegrationRuntime
- prometheus - 获取prometheus标签的因变量
- r - 如何在一个数据框中找到唯一值并使用它来过滤 R 中的另一个数据框
- java - 如果列表是另一个列表的子集,则 Ebean 返回记录
- ruby-on-rails - 如果用户之前选择了单选按钮,如何在 Rails App 中将单选按钮添加回表单