Python登录系统界面实现详解


Posted in Python onJune 25, 2019

导言篇

我的python环境是:python3.6.5

这里我选择的GUI编程包是:tkinter

tkinker在python2.5以后就是自带包了,所以我们不需要另外安装

tkinker相对与其他python GUI编程的包而已,是相对容易入手的

代码篇

这是系统的登录界面  

import tkinter 
from tkinter import messagebox
class Login(object): 
 def __init__(self): 
  # 创建主窗口,用于容纳其它组件 
  self.root = tkinter.Tk() 
  # 给主窗口设置标题内容 
  self.root.title("影视资源管理系统(离线版)") 
  self.root.geometry('450x300') 
  #运行代码时记得添加一个gif图片文件,不然是会出错的
  self.canvas = tkinter.Canvas(self.root, height=200, width=500)#创建画布 
  self.image_file = tkinter.PhotoImage(file='welcome_1.gif')#加载图片文件 
  self.image = self.canvas.create_image(0,0, anchor='nw', image=self.image_file)#将图片置于画布上 
  self.canvas.pack(side='top')#放置画布(为上端) 
  #创建一个`label`名为`Account: ` 
  self.label_account = tkinter.Label(self.root, text='Account: ') 
  #创建一个`label`名为`Password: ` 
  self.label_password = tkinter.Label(self.root, text='Password: ') 
  # 创建一个账号输入框,并设置尺寸 
  self.input_account = tkinter.Entry(self.root, width=30) 
  # 创建一个密码输入框,并设置尺寸 
  self.input_password = tkinter.Entry(self.root, show='*', width=30) 
  # 创建一个登录系统的按钮 
  self.login_button = tkinter.Button(self.root, command = self.backstage_interface, text = "Login", width=10) 
  # 创建一个注册系统的按钮 
  self.siginUp_button = tkinter.Button(self.root, command = self.siginUp_interface, text = "Sign up", width=10) 
 # 完成布局 
 def gui_arrang(self): 
  self.label_account.place(x=60, y= 170) 
  self.label_password.place(x=60, y= 195) 
  self.input_account.place(x=135, y=170) 
  self.input_password.place(x=135, y=195) 
  self.login_button.place(x=140, y=235) 
  self.siginUp_button.place(x=240, y=235) 
 # 进入注册界面 
 def siginUp_interface(self): 
  # self.root.destroy() 
  tkinter.messagebox.showinfo(title='影视资源管理系统', message='进入注册界面')  
 # 进行登录信息验证 
 def backstage_interface(self): 
  account = self.input_account.get().ljust(10," ") 
  password = self.input_password.get().ljust(10," ") 
  #对账户信息进行验证,普通用户返回user,管理员返回master,账户错误返回noAccount,密码错误返回noPassword 
  verifyResult = verifyAccount.verifyAccountData(account,password) 
  if verifyResult=='master': 
   self.root.destroy() 
   tkinter.messagebox.showinfo(title='影视资源管理系统', message='进入管理界面') 
  elif verifyResult=='user': 
   self.root.destroy() 
   tkinter.messagebox.showinfo(title='影视资源管理系统', message='进入用户界面') 
  elif verifyResult=='noAccount': 
   tkinter.messagebox.showinfo(title='影视资源管理系统', message='该账号不存在请重新输入!') 
  elif verifyResult=='noPassword': 
   tkinter.messagebox.showinfo(title='影视资源管理系统', message='账号/密码错误请重新输入!') 
def main(): 
 # 初始化对象 
 L = Login() 
 # 进行布局 
 L.gui_arrang() 
 # 主程序执行 
 tkinter.mainloop() 
if __name__ == '__main__': 
 main()

效果篇

Python登录系统界面实现详解

语法介绍

环境配置:

Python3.6.5,前往官网下载

tkinker包:Python2.5之后,tkinker包是自带的,我们直接导入就好了

基本语法:

self.root = tkinter.Tk()

创建一个窗口对象root,root前面的self.是面向对象里面的内容,不明白的童鞋可以去Google一下面向对象

self.root.title("影视资源管理系统(离线版)") 
self.root.geometry('450x300')

给窗口root设置标题,并设置窗口

self.canvas = tkinter.Canvas(self.root, height=200, width=500)#创建画布 
self.image_file = tkinter.PhotoImage(file='welcome_1.gif')#加载图片文件 
self.image = self.canvas.create_image(0,0, anchor='nw', image=self.image_file)#将图片置于画布上 
self.canvas.pack(side='top')#放置画布(为上端)

如果我们需要让自己的界面在美观上加分,大可以试试创建一个画布,也就是下面这个东西

Python登录系统界面实现详解

我这里是先对图片背景进行了透明化处理,需要的小伙伴可以去这里 对图片进行处理,个人觉得这个网站还是不错的

#创建一个`label`名为`Account: ` 
self.label_account = tkinter.Label(self.root, text='Account: ') 
#创建一个`label`名为`Password: ` 
self.label_password = tkinter.Label(self.root, text='Password: ')

这里创建的是一个label,label是什么不明白可以参考上面贴图的“Account:”与“Password:”

.Label(A, B):参数A代表Lable依赖窗口,参数B即用户可见的Lable的名字了(text="LableName")

.Button(A, B, text='', [width='', height='']):参数A是按钮依赖的窗口主体,参数B是按钮的相应事件(command = self.siginUp_interface)这里的响应事件的进行注册/登录进入后台,command后接响应函数。

.Entry(A):输入框,参照前面的.Label(),有疑问的可以在下方留言

.place(x="", y=""):这个是设置窗口部件的函数

额。。。。登录界面就介绍到这里了,后面我会继续更新登录界面的响应机制,有不明的地方可以在下方留言,我看到会回复的

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python求crc32值的方法
Oct 05 Python
零基础写python爬虫之打包生成exe文件
Nov 06 Python
python实现在sqlite动态创建表的方法
May 08 Python
selenium处理元素定位点击无效问题
Jun 12 Python
ML神器:sklearn的快速使用及入门
Jul 11 Python
python处理大日志文件
Jul 23 Python
Python timeit模块的使用实践
Jan 13 Python
Python 实现平台类游戏添加跳跃功能
Mar 27 Python
python中setuptools的作用是什么
Jun 19 Python
Python利用matplotlib绘制散点图的新手教程
Nov 05 Python
Python机器学习之KNN近邻算法
May 14 Python
python 爬取天气网卫星图片
Jun 07 Python
用python打印菱形的实操方法和代码
Jun 25 #Python
python爬虫实现中英翻译词典
Jun 25 #Python
选择python进行数据分析的理由和优势
Jun 25 #Python
python的sorted用法详解
Jun 25 #Python
PyQt5实现简易电子词典
Jun 25 #Python
python如何制作英文字典
Jun 25 #Python
Pandas DataFrame数据的更改、插入新增的列和行的方法
Jun 25 #Python
You might like
PHP中date与gmdate的区别及默认时区设置
2014/05/12 PHP
yum命令安装php7和相关扩展
2016/07/04 PHP
事件模型在各浏览器中存在差异
2010/10/20 Javascript
JavaScript中的Math.atan2()方法使用详解
2015/06/15 Javascript
C#中使用迭代器处理等待任务
2015/07/13 Javascript
Node.js程序中的本地文件操作用法小结
2016/03/06 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
2018/04/17 Javascript
LayUI表格批量删除方法
2018/08/15 Javascript
element-ui中的select下拉列表设置默认值方法
2018/08/24 Javascript
Jquery实现无缝向上循环滚动列表的特效
2019/02/13 jQuery
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
Jquery高级应用Deferred对象原理及使用实例
2020/05/28 jQuery
JSON 入门教程基础篇 json入门学习笔记
2020/09/22 Javascript
python使用新浪微博api上传图片到微博示例
2014/01/10 Python
python基础教程之简单入门说明(变量和控制语言使用方法)
2014/03/25 Python
Python基于sftp及rsa密匙实现远程拷贝文件的方法
2016/09/21 Python
老生常谈Python startswith()函数与endswith函数
2017/09/08 Python
使用Python实现windows下的抓包与解析
2018/01/15 Python
python中的tcp示例详解
2018/12/09 Python
Python实现性能自动化测试竟然如此简单
2019/07/30 Python
tensorflow实现在函数中用tf.Print输出中间值
2020/01/21 Python
关于windows下Tensorflow和pytorch安装教程
2020/02/04 Python
使用Pycharm分段执行代码
2020/04/15 Python
CSS3教程(8):CSS3透明度指南
2009/04/02 HTML / CSS
新加坡交友网站:be2新加坡
2019/04/10 全球购物
资深生产主管自我评价
2013/09/22 职场文书
求职自荐信范文格式
2013/11/29 职场文书
市场营销毕业求职信
2014/08/07 职场文书
忠诚教育心得体会
2014/09/03 职场文书
思想作风纪律整顿心得体会
2014/09/04 职场文书
校运动会广播稿(100篇)
2014/09/12 职场文书
个人批评与自我批评
2014/10/15 职场文书
融资合作协议书范本
2014/10/17 职场文书
教师求职简历自我评价
2015/03/10 职场文书
郭明义观后感
2015/06/08 职场文书
高一军训感想
2015/08/07 职场文书