gpt4 book ai didi

python - 如何在 tkinter 中验证输入字段

转载 作者:太空宇宙 更新时间:2023-11-03 20:59:53 26 4
gpt4 key购买 nike

我只想要数字和符号“.”打印在我的输入字段中。但是运行此代码后,我只能输入数字或只能输入符号“.”(我尝试输入“2.45”,但点不在“2”之后输入。如果我尝试输入“.45”,则不会输入“45”在“.”之后输入)。我该如何解决这个问题?

from tkinter import *

root = Tk()
entry = Entry(width=10)
entry.pack()

def correct(inp):
if inp.isdigit():
return True
elif inp == ".":
return True
elif inp == "":
return True
else:
return False

reg = root.register(correct)

entry.config(validate='key', validatecommand = (reg, '%P'))

root.mainloop()

最佳答案

你的验证函数没有写错……我认为这将是一种更简单的方法来完成你想要的事情:

import tkinter as tk

root = tk.Tk()
entry = tk.Entry(width=10)
entry.pack()

def correct(inp):
""" Determine if inp value is a valid floating point number. """
try:
float(inp)
except ValueError:
return inp == '' # Consider empty string valid.
else:
return True

reg = root.register(correct)

entry.config(validate='key', validatecommand=(reg, '%P'))

root.mainloop()

关于python - 如何在 tkinter 中验证输入字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55778051/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com