Python GUI学习之登录系统界面篇


Posted in Python onAugust 21, 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 GUI学习之登录系统界面篇

语法介绍:环境配置:

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 GUI学习之登录系统界面篇

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

#创建一个`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实现忽略大小写对字符串列表排序的方法
Sep 25 Python
举例讲解Python设计模式编程中对抽象工厂模式的运用
Mar 02 Python
python字典键值对的添加和遍历方法
Sep 11 Python
python图书管理系统
Apr 05 Python
Python简单实现的代理服务器端口映射功能示例
Apr 08 Python
Python 判断文件或目录是否存在的实例代码
Jul 19 Python
python MNIST手写识别数据调用API的方法
Aug 08 Python
Python面向对象之反射/自省机制实例分析
Aug 24 Python
对python函数签名的方法详解
Jan 22 Python
tensorflow之tf.record实现存浮点数数组
Feb 17 Python
使用Python实现微信拍一拍功能的思路代码
Jul 09 Python
在PyCharm中安装PaddlePaddle的方法
Feb 05 Python
Python爬虫:将headers请求头字符串转为字典的方法
Aug 21 #Python
利用python在大量数据文件下删除某一行的例子
Aug 21 #Python
Python 仅获取响应头, 不获取实体的实例
Aug 21 #Python
详解用Python为直方图绘制拟合曲线的两种方法
Aug 21 #Python
Python 使用指定的网卡发送HTTP请求的实例
Aug 21 #Python
Python turtle绘画象棋棋盘
Aug 21 #Python
Python随机函数库random的使用方法详解
Aug 21 #Python
You might like
《PHP编程最快明白》第八讲:php启发和小结
2010/11/01 PHP
使用PHP实现下载CSS文件中的图片
2015/12/06 PHP
PHPExcel中文帮助手册|PHPExcel使用方法(分享)
2017/06/09 PHP
PHP实现的回溯算法示例
2017/08/15 PHP
在Javascript中 声明时用"var"与不用"var"的区别
2013/04/15 Javascript
javascript使用定时函数实现跳转到某个页面
2013/12/25 Javascript
深入理解JavaScript系列(44):设计模式之桥接模式详解
2015/03/04 Javascript
图解JavaScript中的this关键字
2020/05/28 Javascript
JavaScript中通过提示框跳转页面的方法
2016/02/14 Javascript
不同js异步函数同步的实现方法
2016/05/28 Javascript
jQuery设置单选按钮radio选中/不可用的实例代码
2016/06/24 Javascript
只要1K 纯JS脚本送你一朵3D红色玫瑰
2016/08/09 Javascript
nodejs搭建本地服务器并访问文件的方法
2017/03/03 NodeJs
关于在vue-cli中使用微信自动登录和分享的实例
2017/06/22 Javascript
jQuery中 DOM节点操作方法大全
2017/10/12 jQuery
vue打包后显示空白正确处理方法
2017/11/01 Javascript
jQuery实现鼠标响应式透明度渐变动画效果示例
2018/02/13 jQuery
vue axios 给生产环境和发布环境配置不同的接口地址(推荐)
2018/05/08 Javascript
纯异步nodejs文件夹(目录)复制功能
2019/09/03 NodeJs
Python科学计算包numpy用法实例详解
2018/02/08 Python
用Pycharm实现鼠标滚轮控制字体大小的方法
2019/01/15 Python
css3中新增的样式使用示例附效果图
2014/08/19 HTML / CSS
摩托车和ATV零件、配件和服装的首选在线零售商:MotoSport
2017/12/22 全球购物
个人求职简历中英文自我评价
2013/12/16 职场文书
英语系本科生求职信范文
2013/12/18 职场文书
英语一分钟演讲稿
2014/04/29 职场文书
绿色小区申报材料
2014/08/22 职场文书
销售员试用期自我评价
2014/09/15 职场文书
小学中等生评语
2014/12/29 职场文书
六年级语文下册教学计划
2015/01/22 职场文书
合理化建议书
2015/02/04 职场文书
会计工作态度自我评价
2015/03/06 职场文书
安全教育主题班会教案
2015/08/12 职场文书
火锅店的开业营销方案范本!
2019/07/05 职场文书
Python中Matplotlib的点、线形状、颜色以及绘制散点图
2022/04/07 Python
CentOS安装Nginx并部署vue
2022/04/12 Servers