侯体宗的博客
  • 首页
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

Python登录系统界面实现详解

Python  /  管理员 发布于 7年前   171

导言篇

我的python环境是:python3.6.5

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

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

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

代码篇

这是系统的登录界面  

 import tkinter from tkinter import messageboxclass 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() 

效果篇

语法介绍

环境配置:

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')#放置画布(为上端)

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

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

#创建一个`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安装requests库的实例代码
    下一条:
    用python打印菱形的实操方法和代码
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在python语言中Flask框架的学习及简单功能示例(0个评论)
    • 在Python语言中实现GUI全屏倒计时代码示例(0个评论)
    • Python + zipfile库实现zip文件解压自动化脚本示例(0个评论)
    • python爬虫BeautifulSoup快速抓取网站图片(1个评论)
    • vscode 配置 python3开发环境的方法(0个评论)
    • 近期文章
    • 在go语言中实现字符串可逆性压缩及解压缩功能(0个评论)
    • 使用go + gin + jwt + qrcode实现网站生成登录二维码在app中扫码登录功能(0个评论)
    • 在windows10中升级go版本至1.24后LiteIDE的Ctrl+左击无法跳转问题解决方案(0个评论)
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2018-04
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2022-01
    • 2023-07
    • 2023-10
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客