在学习tkinter模块,看到有一个练习是实现登录的,我刚好又在学习面向对象,所以把这两个相结合,实现登录验证,登录成功,就自动打开百度页面

from tkinter import *
import webbrowser # 用来打开网页的模块

class login_test:
  
    def __init__(self):
  
        self.root = Tk()
  
	# 设置窗口标题
        self.root.title('登录测试')
  
	# 设置窗口大小以及在屏幕的位置 widthxheight+x+y
        self.root.geometry('300x200+500+500')
  
	# 创建一个标签对象,并放在第0行第0列的位置上
	# grid()用来设置组件的位置的,需要传入row-行,column-列, sticky有四个值NESW,分别表示北东南西
        Label(self.root, text='用户名:').grid(row=0, column=0, sticky=W)
  
	# 创建一个文本输入框对象,并放在第0行第1列的位置上
        self.username = Entry(self.root)
        self.username.grid(row=0, column=1, sticky=E)
  
	# 创建一个标签对象,并放在第1行第0列的位置上
        Label(self.root, text='密码:').grid(row=1, column=0, sticky=W)

	# 创建一个文本输入框对象,并放在第1行第1列的位置上
        self.password = Entry(self.root)

	# 将输入的内容用字符*号显示
        self.password['show'] = '*'
        self.password.grid(row=1, column=1, sticky=E)
 
	# 创建个标签,用来显示用户名和密码的验证情况
        self.label = Label(self.root, text='')
        self.label.grid(row=2, column=0, sticky=W)
  
	# 创建一个按钮, command表示点击按钮后要执行的事件,它的值是一个函数名,不需要加()
        Button(self.root, text='登录', command=self.check).grid(row=2, column=1, sticky=E)
  
	# 让应用程序保持循环
        self.root.mainloop()


    def check(self):
  
	# get()用来获取输入框的值 
        username = self.username.get()
        password = self.password.get()
  
	# 验证用户名和密码的逻辑代码 
        if username == 'abc':
            if password == '123456':
		# 修改标签内容
                self.label['text'] = '恭喜,登录成功'
		# 修改文字的颜色  
		self.label['fg'] = 'black'
		# 登录成功后,自动打开百度页面
                webbrowser.open('http://www.baidu.com')
            else:
                self.label['text'] = '登录失败,密码输入错误'
                self.label['fg'] = 'red'
		# delete() 用来删除输入框中输入的内容,第一个参数是删除的起始位置,第二个是删除的末尾位置(不包含)
                self.password.delete(0, len(password))
        else:
            self.label['text'] = '没有此用户名'
            self.label['fg'] = 'red'
            self.username.delete(0, len(username))
            self.password.delete(0, len(password))
  

if __name__ == '__main__':
  
    login_test()

做出来的界面,用户名和密码登录正确后会打开百度页面,自己可以去试试:

练习|使用tkinter实现登录验证

在学习tkinter模块,看到有一个练习是实现登录的,我刚好又在学习面向对象,所以把这两个相结合,实现登录验证,登录成功,就自动打开百度页面

from tkinter import *
import webbrowser # 用来打开网页的模块

class login_test:
  
    def __init__(self):
  
        self.root = Tk()
  
	# 设置窗口标题
        self.root.title('登录测试')
  
	# 设置窗口大小以及在屏幕的位置 widthxheight+x+y
        self.root.geometry('300x200+500+500')
  
	# 创建一个标签对象,并放在第0行第0列的位置上
	# grid()用来设置组件的位置的,需要传入row-行,column-列, sticky有四个值NESW,分别表示北东南西
        Label(self.root, text='用户名:').grid(row=0, column=0, sticky=W)
  
	# 创建一个文本输入框对象,并放在第0行第1列的位置上
        self.username = Entry(self.root)
        self.username.grid(row=0, column=1, sticky=E)
  
	# 创建一个标签对象,并放在第1行第0列的位置上
        Label(self.root, text='密码:').grid(row=1, column=0, sticky=W)

	# 创建一个文本输入框对象,并放在第1行第1列的位置上
        self.password = Entry(self.root)

	# 将输入的内容用字符*号显示
        self.password['show'] = '*'
        self.password.grid(row=1, column=1, sticky=E)
 
	# 创建个标签,用来显示用户名和密码的验证情况
        self.label = Label(self.root, text='')
        self.label.grid(row=2, column=0, sticky=W)
  
	# 创建一个按钮, command表示点击按钮后要执行的事件,它的值是一个函数名,不需要加()
        Button(self.root, text='登录', command=self.check).grid(row=2, column=1, sticky=E)
  
	# 让应用程序保持循环
        self.root.mainloop()


    def check(self):
  
	# get()用来获取输入框的值 
        username = self.username.get()
        password = self.password.get()
  
	# 验证用户名和密码的逻辑代码 
        if username == 'abc':
            if password == '123456':
		# 修改标签内容
                self.label['text'] = '恭喜,登录成功'
		# 修改文字的颜色  
		self.label['fg'] = 'black'
		# 登录成功后,自动打开百度页面
                webbrowser.open('http://www.baidu.com')
            else:
                self.label['text'] = '登录失败,密码输入错误'
                self.label['fg'] = 'red'
		# delete() 用来删除输入框中输入的内容,第一个参数是删除的起始位置,第二个是删除的末尾位置(不包含)
                self.password.delete(0, len(password))
        else:
            self.label['text'] = '没有此用户名'
            self.label['fg'] = 'red'
            self.username.delete(0, len(username))
            self.password.delete(0, len(password))
  
  
  
  
  
if __name__ == '__main__':
  
    login_test()

做出来的界面,用户名和密码登录正确后会打开百度页面,自己可以去试试:

python tkinter treeview 密码掩盖_用户名