• python登陆窗口实例


    # Author:979
    # blog addr:http://www.cnblogs.com/home979/
    #引用自:https://www.cnblogs.com/wwf828/p/7418181.html
    
    import tkinter as tk
    from tkinter import messagebox
    import pickle
    
    window = tk.Tk()
    window.title('Welcome to Mofan Python')
    window.geometry('500x300')
    
    # welcome image
    canvas = tk.Canvas(window, height=200, width=500)
    image_file = tk.PhotoImage(file='logo.png')
    image = canvas.create_image(0,0, anchor='nw', image=image_file)
    canvas.pack(side='top')
    
    # user information
    tk.Label(window, text='用户名: ').place(x=50, y= 150)
    tk.Label(window, text='密码: ').place(x=50, y= 190)
    # tk.Label(window, text='百度地图密匙: ').place(x=50, y= 220)
    
    #建立输入框
    var_usr_name = tk.StringVar()
    var_usr_name.set('home979@outlook.com')
    entry_usr_name = tk.Entry(window, textvariable=var_usr_name)
    entry_usr_name.place(x=160, y=150)
    
    var_usr_pwd = tk.StringVar()
    entry_usr_pwd = tk.Entry(window, textvariable=var_usr_pwd, show='*')
    entry_usr_pwd.place(x=160, y=190)
    
    def usr_login():
        usr_name = var_usr_name.get()
        usr_pwd = var_usr_pwd.get()
        try:
            with open('usrs_info.pickle', 'rb') as usr_file:
                usrs_info = pickle.load(usr_file)
        except FileNotFoundError:
            with open('usrs_info.pickle', 'wb') as usr_file:
                usrs_info = {'admin': 'admin'}
                pickle.dump(usrs_info, usr_file)
        if usr_name in usrs_info:
            if usr_pwd == usrs_info[usr_name]:
                tk.messagebox.showinfo(title='Welcome', message='How are you? ' + usr_name)
            else:
                tk.messagebox.showerror(message='Error, your password is wrong, try again.')
        else:
            is_sign_up = tk.messagebox.askyesno('Welcome',
                                   'You have not sign up yet. Sign up today?')
            if is_sign_up:
                usr_sign_up()
    
    def usr_sign_up():
        exit()
        return
    
    
    # login and sign up button
    btn_login = tk.Button(window, text='Login', command=usr_login)
    btn_login.place(x=170, y=230)
    btn_sign_up = tk.Button(window, text='Sign up', command=usr_sign_up)
    btn_sign_up.place(x=270, y=230)
    
    window.mainloop()
  • 相关阅读:
    软件测试作业随笔之二:Homework 2
    软件项目管理作业随笔之一:记我完成的一个项目
    C#博客随笔之十:Problem Statement+System Glossary+System Supplementary Specification FOR每美欲下
    C#博客随笔之九:EF框架的使用
    C#博客随笔之八:EntityFramework初识
    C#博客随笔之七:反射初体验
    C#博客随笔之六:数据绑定
    node.js 框架基本功能
    为什么不用第三方缓存
    微服务基础设施实现方案 -- node.js
  • 原文地址:https://www.cnblogs.com/home979/p/8535630.html
Copyright © 2020-2023  润新知