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的pandas框架操作Excel文件中的数据教程
Mar 31 Python
Python中datetime常用时间处理方法
Jun 15 Python
Python实现二叉堆
Feb 03 Python
使用python实现tcp自动重连
Jul 02 Python
分分钟入门python语言
Mar 20 Python
python中ASCII码和字符的转换方法
Jul 09 Python
基于Django框架利用Ajax实现点赞功能实例代码
Aug 19 Python
用python标准库difflib比较两份文件的异同详解
Nov 16 Python
使用Python实现 学生学籍管理系统
Nov 26 Python
Python模块zipfile原理及使用方法详解
Aug 04 Python
Python就将所有的英文单词首字母变成大写
Feb 12 Python
python爬虫scrapy框架之增量式爬虫的示例代码
Feb 26 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
第六节 访问属性和方法 [6]
2006/10/09 PHP
网页游戏开发入门教程三(简单程序应用)
2009/11/02 PHP
js实现动态改变字体大小代码
2014/01/02 Javascript
jquery的live使用注意事项
2014/02/18 Javascript
jquery中$(#form :input)与$(#form input)的区别
2014/08/18 Javascript
AngularJS入门教程(零):引导程序
2014/12/06 Javascript
windows8.1+iis8.5下安装node.js开发环境
2014/12/12 Javascript
【JS+CSS3】实现带预览图幻灯片效果的示例代码
2016/03/17 Javascript
TinyMCE汉化及本地上传图片功能实例详解
2016/05/31 Javascript
最简单的JS实现json转csv的方法
2019/01/10 Javascript
小程序实现搜索界面 小程序实现推荐搜索列表效果
2019/05/18 Javascript
JavaScript JSON数据处理全集(小结)
2019/08/15 Javascript
Vue 用Vant实现时间选择器的示例代码
2019/10/25 Javascript
JS通过识别id、value值对checkbox设置选中状态
2020/02/19 Javascript
javascript设计模式 ? 策略模式原理与用法实例分析
2020/04/21 Javascript
在Vuex中Mutations修改状态操作
2020/07/24 Javascript
vue实现移动端input上传视频、音频
2020/08/18 Javascript
[01:23]2014DOTA2国际邀请赛 球迷无处不在Ti现场世界杯受关注
2014/07/10 DOTA
Python实现求最大公约数及判断素数的方法
2015/05/26 Python
使用Python编写Prometheus监控的方法
2018/10/15 Python
python列表使用实现名字管理系统
2019/01/30 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
TensorFlow2.0:张量的合并与分割实例
2020/01/19 Python
Python while循环使用else语句代码实例
2020/02/07 Python
Pandas读取csv时如何设置列名
2020/06/02 Python
Python selenium爬取微信公众号文章代码详解
2020/08/12 Python
Python+unittest+requests 接口自动化测试框架搭建教程
2020/10/09 Python
Mio Skincare法国官网:身体紧致及孕期身体护理
2018/04/04 全球购物
Fossil加拿大官网:化石手表、手袋、首饰及配饰
2019/04/23 全球购物
EJB的激活机制
2013/10/25 面试题
师范生自荐信
2013/10/27 职场文书
财务人员的自我评价范文
2014/03/03 职场文书
学校社会实践活动总结
2014/07/03 职场文书
2014年远程教育工作总结
2014/12/09 职场文书
2015年行政管理人员工作总结
2015/10/15 职场文书
2019企业给员工的慰问信
2019/06/24 职场文书