Я пытаюсь создать небольшую GUI программу, и в настоящее время я застрял в том, как сделать функцию проверки идентификационного номера с помощью шаблона регулярных выражений. Я почти уверен, что входные данные в поле ввода неправильно передаются от одной функции к другой. Вот что я получил до сих пор.
from tkinter import *
import re
IDnum = ""
def searchIdInput():
IdPattern =r'[0-9]{7}[A-Z]'
if(re.search(IdPattern, user_input)):
print("Invalid ID Format")
else:
print("Valid ID Format")
def openIdWindow():
IDnum = ""
#exit main window
root.destroy()
IDinp = Tk(className='ID Photo Validation second')
# set window size
IDinp.geometry("500x200")
idLabel = Label(IDinp, text="Enter ID Number")
idInput = Entry(IDinp, width=30)
user_input = idInput.get()
print (user_input)
searchIdBtn = Button(IDinp, text="Continue", padx=20, command=lambda: searchIdInput())
idLabel.config(font=("Courier", 20))
idLabel.place(relx = 0.5, rely = 0.3, anchor = CENTER)
idInput.place(relx = 0.5, rely = 0.5, anchor = CENTER)
searchIdBtn.place(relx = 0.5, rely = 0.9, anchor = CENTER)
return user_input
root = Tk(className='ID Photo Validation')
# set window size
root.geometry("500x200")
welcome = Label(root, text="Welcome to my program!")
startBtn = Button(root, text="Start", padx=20, command=openIdWindow)
name = Label(root, text="Mathias Cuschieri MSD 4.2B")
welcome.config(font=("Courier", 20))
welcome.place(relx = 0.5, rely = 0.3, anchor = CENTER)
startBtn.place(relx = 0.5, rely = 0.5, anchor = CENTER)
name.place(relx = 0.5, rely =0.9, anchor = CENTER)
mainloop()