admin 发表于 2022-1-19 12:58:24

【Python Tkinter组件】——做一个简单常规的登录页面

做一个非常简单的登录页面,附加练习文件,都打包好了,免费拿走,里面有源文件、图片,而且我也把打包好了的文件也放到里面了,供大家学习

练习素材:

提取码:2rn1 练习素材 点击直接下载

导入模块
import tkinter
from tkinter import *
import tkinter as tk
from tkinter import messagebox
添加标题,固定窗口大小及位置,附加程序的图标,图标进行选用ico格式的图标,可加可不加

root.title('贱工坊-登录')# 程序的标题名称
root.geometry("440x290+512+288")# 窗口的大小及页面的显示位置
root.resizable(False, False)# 固定页面不可放大缩小
root.iconbitmap("picture.ico")# 程序的图标
创建一个画布,然后将我们的程序背景图加载上去
canvas = tkinter.Canvas(root, bg="white", height=400, width=700, borderwidth=-3)# 创建画布
canvas.pack(side='top')# 放置画布(为上端)
image_file = tkinter.PhotoImage(file="./background.png")# 加载图片文件
canvas.create_image(0, 0, anchor='nw', image=image_file)# 将图片置于画布上
这个是输入框,用来输入用户及密码,show可以将密码改为*,更好的保护隐私
# 配置账户名
var_usr_name = tkinter.StringVar()
tkinter.Entry(root, width=16,borderwidth=0,textvariable=var_usr_name,font=('黑体', 16)).place(x=144,y=140)

# 配置密码
var_usr_pwd = tkinter.StringVar()
tkinter.Entry(root, width=16, borderwidth=0,show='*', textvariable=var_usr_pwd, font=('黑体', 16)).place(x=144, y=184)
如果账号或密码有一个错误,则会提示有误
tkinter.Label(root, text='错误:账号或密码有误请重试!', bg="white", font=('宋体', 9), fg='red', width=60, borderwidth=2).place(
            x=30, y=220)
user_info是固定的账号密码,用来检测,如果账号和密码都对,则执行登录成功提示,错误则提示有误,密码可以该,想添加文件读取密码的也可以,之不过要想好怎么给密码文件加密然后进行读取
usrs_info = ["张三","123456"]   # 账号与密码
if usrs_info == var_usr_name.get():   # 检测账号是否正确
    if usrs_info == var_usr_pwd.get():   # 检测密码是否正确
      tkinter.messagebox.showinfo(title='登录', message='登录成功,欢迎使用!\n等待跳转!!!')# 提示登录成功               
    else:
      Tips()
else:
    Tips()
我们来运行一下:


可以看到,账号输入错误会有提示


输入正确则会提示登录成功


完整代码:

import tkinter
from tkinter import *
import tkinter as tk
from tkinter import messagebox

def main():
    root = tk.Tk()
    root.title('贱工坊-登录')# 程序的标题名称
    root.geometry("440x290+512+288")# 窗口的大小及页面的显示位置
    root.resizable(False, False)# 固定页面不可放大缩小
    root.iconbitmap("picture.ico")# 程序的图标

    canvas = tkinter.Canvas(root, bg="white", height=400, width=700, borderwidth=-3)# 创建画布
    canvas.pack(side='top')# 放置画布(为上端)
    image_file = tkinter.PhotoImage(file="./background.png")# 加载图片文件
    canvas.create_image(0, 0, anchor='nw', image=image_file)# 将图片置于画布上

    # 配置账户名
    var_usr_name = tkinter.StringVar()
    tkinter.Entry(root, width=16,borderwidth=0,textvariable=var_usr_name,font=('黑体', 16)).place(x=144,y=140)

    # 配置密码
    var_usr_pwd = tkinter.StringVar()
    tkinter.Entry(root, width=16, borderwidth=0,show='*', textvariable=var_usr_pwd, font=('黑体', 16)).place(x=144, y=184)

    # 错误提示
    def Tips():
      tkinter.Label(root, text='错误:账号或密码有误请重试!', bg="white", font=('宋体', 9), fg='red', width=60, borderwidth=2).place(
            x=30, y=220)

    # 登录
    def usr_login():
      usrs_info = ["张三","123456"]   # 账号与密码
      if usrs_info == var_usr_name.get():   # 检测账号是否正确
            if usrs_info == var_usr_pwd.get():   # 检测密码是否正确
                tkinter.messagebox.showinfo(title='登录', message='登录成功,欢迎使用!\n等待跳转!!!')# 提示登录成功
            else:
                Tips()
      else:
            Tips()
    # 按钮
    Button(root, text='登录',bg='#ffffff',borderwidth=0.5, relief='ridge',width=32, font=('黑体', 13),command=usr_login).place(x=74,y=240)
    # text 按钮的文字显示
    # relief 边框的装饰   flat、raised、solid、ridge、groove
    # bg 按钮的背景色
    # fg 按钮的前景色
    # width 按钮的宽度   hright 按钮的高度
    # state 按钮的状态 normal、active、disabled默认为normal
    # font 字体装饰("微软雅黑",10)微软雅黑为字体名称,10为字体大小
    # command 按钮调用的函数
    # place 位置

    root.mainloop() #运行
if __name__ == '__main__':
    main()


页: [1]
查看完整版本: 【Python Tkinter组件】——做一个简单常规的登录页面