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代码实现KNN算法
Dec 20 Python
浅析Python数据处理
May 02 Python
python学生信息管理系统(初级版)
Oct 17 Python
python实现文本界面网络聊天室
Dec 12 Python
浅谈python3发送post请求参数为空的情况
Dec 28 Python
python解析命令行参数的三种方法详解
Nov 29 Python
flask实现验证码并验证功能
Dec 05 Python
pytorch程序异常后删除占用的显存操作
Jan 13 Python
Python打包模块wheel的使用方法与将python包发布到PyPI的方法详解
Feb 12 Python
配置python的编程环境之Anaconda + VSCode的教程
Mar 29 Python
python将logging模块封装成单独模块并实现动态切换Level方式
May 12 Python
python基于turtle绘制几何图形
Jun 15 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 抽象类的简单应用
2011/09/06 PHP
手把手教你打印出PDF(关于fpdf的简单应用)
2013/06/25 PHP
php解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
2014/06/19 PHP
PHP在线书签系统分享
2016/01/04 PHP
laravel如何开启跨域功能示例详解
2017/08/31 PHP
php实现生成带二维码图片并强制下载功能
2018/02/24 PHP
js输入框邮箱自动提示功能代码实现
2013/12/10 Javascript
jquery+easeing实现仿flash的载入动画
2015/03/10 Javascript
浅谈React中的元素、组件、实例和节点
2018/02/27 Javascript
js canvas实现红包照片效果
2018/08/21 Javascript
如何安装控制器JavaScript生成插件详解
2018/10/21 Javascript
js中offset,client , scroll 三大元素知识点总结
2019/09/11 Javascript
vue实现信息管理系统
2020/05/30 Javascript
viewer.js实现图片预览功能
2020/06/24 Javascript
JavaScript常用工具函数汇总(浏览器环境)
2020/09/17 Javascript
axios解决高并发的方法:axios.all()与axios.spread()的操作
2020/11/09 Javascript
Python正则表达式匹配ip地址实例
2014/10/09 Python
python如何在终端里面显示一张图片
2016/08/17 Python
Python 常用 PEP8 编码规范详解
2017/01/22 Python
Python实现压缩和解压缩ZIP文件的方法分析
2017/09/28 Python
详解如何用OpenCV + Python 实现人脸识别
2017/10/20 Python
python opencv人脸检测提取及保存方法
2018/08/03 Python
pandas取出重复数据的方法
2019/07/04 Python
python批量图片处理简单示例
2019/08/06 Python
Python实现http接口自动化测试的示例代码
2020/10/09 Python
python不同版本的_new_不同点总结
2020/12/09 Python
HTML5 WebSocket实现点对点聊天的示例代码
2018/01/31 HTML / CSS
介绍一下木马病毒的种类
2015/07/26 面试题
个人授权委托书范本
2014/04/03 职场文书
《宋庆龄故居的樟树》教学反思
2014/04/07 职场文书
南京市纪委监察局整改方案
2014/09/16 职场文书
十八大标语口号
2014/10/09 职场文书
幼儿园2014年度工作总结
2014/11/10 职场文书
辩护词范文大全
2015/05/21 职场文书
Python内置数据类型中的集合详解
2022/03/18 Python
python 单机五子棋对战游戏
2022/04/28 Python