Python前端前端 Tkinter开发登录界面开发登录界面
Python GUI界面开发的入门,是从tkinter开始的。(小程序,附带吗)
首先先介绍一下Tkinter吧
Tkinter模块(“Tk 接口”)是Python的标准Tk GUI工具包的接口.
Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.Tk8.0的后续版本可以实现本地窗口
风格,并良好地运行在绝大多数平台中
(亲测)但是在windows系统下,目前Python2和Python3中,tkinter的编写略有不同,我个人愚见,py3调用基本要大
写,py2调用基本要小写。
下面是本人实验的一个登录小界面,主要由登录界面和系统页面构成。
先导入必要的包
import os
import Tkinter as tk
from Tkinter import *
import tkFileDialog as fdg
import tkMessageBox as msg
import pickle
from PIL import Image,ImageTk
登录界面(主界面)的搭建登录界面(主界面)的搭建
def get_image(filename,width,height):
im=Image.open(filename).resize((width,height))
return ImageTk.PhotoImage(im)
window=tk.Tk()
window.geometry('540x250')
window.title("人工智能助手")
canvs_window=tk.Canvas(window,width=540,height=250)
im_window=get_image('C:/Users/.../lg.jpg',540,250)
canvs_window.create_image(270,125,image=im_window)
canvs_window.pack()
界面的初始化
#登录界面,用户、密码
label1=tk.Label(window,text='VIP账号:')
label1.place(x=250,y=25)
label2=tk.Label(window,text='账号密码:')
label2.place(x=250,y=90)
var_usr_name=tk.StringVar()
entry_usr_name=tk.Entry(window,textvariable=var_usr_name)
entry_usr_name.place(x=330,y=25)
var_usr_pwd=tk.StringVar()
entry_usr_pwd=tk.Entry(window,textvariable=var_usr_pwd,show='*')
entry_usr_pwd.place(x=330,y=90)
用户数据库的建立
def usr_log_in():
usr_name=var_usr_name.get()
user_pwd=var_usr_pwd.get()
#从本地字典获取用户信息,如果没有则新建本地数据库
try:
with open('C:/Users/john/Desktop/usr_info.pickle','rb') as usr_file:
usrs_info=pickle.load(usr_file)
except IOError:
with open('C:/Users/john/Desktop/usr_info.pickle','wb') as usr_file:
usrs_info={'admin':'admin'}
pickle.dump(usrs_info,usr_file)
if usr_name in usrs_info:
if user_pwd in usrs_info[usr_name]:
msg.showinfo(title='welcome',message=usr_name+'欢迎登录')
window.quit
created()
else:
msg.showerror(title='tip',message='密码错误,请重新输入!')
elif usr_name=='' or user_pwd=='':
msg.showerror(title='tip',message='用户名或密码为空!')
else: