python - 如何在 TKinter 的输入框中添加存在检查验证?
问题描述
首先,我知道这个问题已经被问过了。但是,它的答案都没有真正回答这个问题。
我正在创建一个允许将详细信息存储在数据库中的程序。也可以使用特定数据(在本例中为名字、姓氏、门牌号和邮政编码)搜索这些详细信息。因此,为了搜索详细信息,需要存在此数据。
我有允许保存输入到数据库的数据的输入框,但我希望它不会添加详细信息,除非输入上述数据。
在伪代码中,我希望程序的功能类似于:
if Firstname or Surname or House or Postcode is not present:
output "Please enter required information"
目前,这是我输入框的代码:
Label(frame1, text = "Postcode: ", font = ("arial 11"), fg = "#b83dba").grid(row = 7, column = 0, sticky = W)
pcVar = StringVar()
pc = Entry(frame1, textvariable = pcVar, bg = "silver")
pc.grid(row = 7, column = 1, sticky = W)
我最好喜欢这样,当没有输入所需的详细信息时,我可以使用代码:messagebox.showerror("Error","Required fields are missing")
任何帮助将不胜感激。
解决方案
没关系,我刚刚发现它,所以我会发布我是如何做到的,以防其他人想知道。如果使用entryvar = Entry(frame1, textvariable = testVar)
作为示例,在实际保存详细信息的代码中,您将包括:
Q = entryvar.get() #Returns the entry's current text as a string.
if Q == "":
messagebox.showerror("Error","Missing required fields") #Opens a messagebox informing the user that the details were not saved and that the data needs to be entered
else:
conn.execute('''INSERT INTO TABLE (DATA)
VALUES(?)''', (dataNew);
conn.commit()
messagebox.showinfo("Success","Details Saved") #Opens a messagebox informing the user that the details have saved
为我的 SQL 道歉,因为我对该语言不是很有信心。
推荐阅读
- java - JAVA TCP 监听器
- javascript - 正则表达式将一系列字母数字和数字字符捕获到数组中
- google-app-maker - 如何让 appmaker 中的按钮执行一些操作并在之后打开 URL
- java - Jersey ExceptionMapper 不能与弹簧靴一起使用?
- android - 当用户从上下文菜单中选择选项时,RecyclerView 无法获得正确的位置来执行任务
- java - JGIT重复合并冲突空指针异常
- colors - Fabric.js:如果边框样式为虚线,如何指定选择框辅助边框颜色
- django - 在 neomodel 中使用 OR 过滤
- java - 将默认公共构造函数添加到生成的构建器内部类
- python - 使用 csv (python) 进行数据挖掘