|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
写了一个简单的用户登录GUI,代码如下:
from tkinter import *
import re
root = Tk()
Label(root,text='账号').grid(row=0,column=0)
Label(root,text='密码').grid(row=1,column=0)
v1 = StringVar()
v2 = StringVar()
value = re.compile(u'[\u4e00-\u9fa5]+') #不允许输入汉字
def numtest(content):
result = value.findall(content)
if result!=[]:
e2.delete(0,END)
print('请输入合法格式的密码!')
return False
else:
return True
testCMD = root.register(numtest)
e1 = Entry(root,textvariable=v1)
e2 = Entry(root,textvariable=v2,show='*',validate='key',validatecommand=(testCMD,'%P'))
e1.grid(row=0,column=1,padx=10,pady=5)
e2.grid(row=1,column=1,padx=10,pady=5)
def show():
print('账号:%s'% e1.get())
print('密码:%s'% e2.get())
Button(root,text='获取信息',width=10,command=show)\
.grid(row=3,column=0,sticky=W,padx=10,pady=5)
Button(root,text='退出',width=10,command=root.quit)\
.grid(row=3,column=1,sticky=E,padx=10,pady=5) #关闭窗口直接调用根quit方法
mainloop()
可以在“密码”栏里输入纯数字或字符,只输入汉字的话会提示输入错误,这里都正常
但是如果先输入一段数字或字符(12345abc)后再输入汉字,提示错误后再次进行输入时,输入汉字也不会报错了 。。。
改了好久都没改对 不清楚是哪儿出了问题。。。
|
|