我创建了一个按钮,如果按下该按钮,它会指向检查功能,这是对用户输入小部件的一种验证检查。
如果用户输入的名字包含字母以外的任何内容,它应该在坐标 (200, 500) 处给出无效检查消息,如果姓氏有这样的错误,则应该在 (200, 700) 处给出一条消息 - - 否则屏幕应进入下一个屏幕。
但是,如果我输入一个错误的条目和一个正确的条目,尽管消息出现在正确的位置 - 当我现在将错误的条目正确和正确的条目输入错误时,消息不会从一个位置消失,而是保持原样并且另一条消息出现在另一个位置(现在有 2 条消息,即使只有一个条目是错误的)
如果这令人困惑,我很抱歉,但简而言之,我的目标是该消息应该只出现在条目出错的坐标上,并在条目被更正后消失。
我应该如何更改我的代码以确保这一点?
def check(FName_Entry, LName_Entry):
if not FName_Entry.get().isalpha():
errormsg = Message(root, text = 'Invalid entry', anchor = CENTER)
canvas.create_window(200, 500, anchor=NW, window = errormsg)
#messagebox.showerror('Only letters', 'Only letters are allowed!')
if not LName_Entry.get().isalpha():
errormsg2 = Message(root, text='Invalid entry', anchor=CENTER)
canvas.create_window(200, 700, anchor=NW, window=errormsg2)
if FName_Entry.get().isalpha() and LName_Entry.get().isalpha():
canvas.delete("all")
. . . .
Next_button = Button(root, text="Next", anchor=CENTER, command=lambda: check(FName_Entry, LName_Entry))
Next_button.configure(width=10, bg="black", fg="blue", border=10)
canvas.create_window(920, 450, anchor=NW, window=Next_button)
慕无忌1623718
相关分类