如何在不将其放入生成器的情况下工作,以及如何限制登录名和密码中放入的caraceters的类型?只能键入从A到D和从0到9
必须是这样,因为我在做窗口操作,所以如果我把它放在生成器上,当我不是另一个窗口,我要回到这个窗口时,它就坏了
class loginUser:
def __init__(self, window, master=None):
# Criando o sistema de login
self.wind = window
self.wind.title("System F2T")
self.fonteTitulo = ("Arial","10","bold")
self.fontePadrao = ("Arial", "10")
#Labels e campos de texto do sistema de login
self.userLabel = Label(text="Digite seu usuário:", font=self.fontePadrao,bg="#000",fg="#FFF").place(x=27,y=60)
self.user = Entry(textvariable=var, font=self.fontePadrao,bg="#FFF",fg="#000")
self.user.place(x=140,y=60,width=110)
self.senhaLabel = Label(text="Digite sua senha:", font=self.fontePadrao,bg="#000",fg="#FFF").place(x=29,y=90)
self.senha = Entry(textvariable=var2, font=self.fontePadrao,show="*",bg="#FFF",fg="#000")
self.senha.place(x=140,y=90,width=110)
max_user = 1
var = StringVar()
var.trace("w", loginUser.limiteUsuario)
max_senha = 4
var2 = StringVar()
var2.trace("w", loginUser.limiteSenha)
def limiteUsuario(*args):
u = var.get()
if len(u) > 1:
if not u[-1].isdigit(): # retirar ultimo caracter caso nao seja digito
var.set(u[:-1])
else: # aproveitar apenas os primeiros 5 chars
var.set(u[:max_user])
def limiteSenha(*args):
s = var2.get()
if len(s) > 4:
if not s[-1].isdigit(): # retirar ultimo caracter caso nao seja digito
var2.set(s[:-1])
else: # aproveitar apenas os primeiros 5 chars
var2.set(s[:max_senha])
if __name__ == "__main__":
root = Tk()
root['bg'] = "#000"
loginUser(root)
#Tamanho da janela
root.geometry("330x200")
root.mainloop()
目前没有回答
相关问题 更多 >
编程相关推荐