iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Pythontkinter库实现登录注册基本功能
  • 730
分享到

Pythontkinter库实现登录注册基本功能

Pythontkinter登录注册PythontkinterPython登录注册 2022-12-30 12:12:30 730人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录一、各种组件的布局二、制作过程中的理解三、制作过程中遇到的难点四、解决问题的方法tkinter库作为python的标准库之一,它的功能性十分强大,下面我将使用tkinter库制作

tkinter库作为python的标准库之一,它的功能性十分强大,下面我将使用tkinter库制作一个简易的注册登录窗口(很难看就是了)。

一、各种组件的布局

制作之前需要大致明白各个窗体的大致位置,登录注册嘛 自然就要有用户名和密码的标签以及需要输入文字的文本框。

'创建用户名的标签'
Label(root,text='用户名',width = 6,font=('华文行楷',20)).place(x=1,y=1)
'用户名后面的输入框'
user = Entry(root,width=20,textvariable = user1).place(x=100,y=1)   
'创建密码的标签'
Label(root,text = '密码',width = 6,font=('华文行楷',20)).place(x=1,y=45)
'密码后面的输入框'
passWord = Entry(root,width =20,textvariable = password1 ).place(x=100,y=45)
'创建两个按钮 用command参数使得在点击按钮时运行对应的函数'
Button(root,text = '登录',width = 8,command= login).place(x=40,y=100)
Button(root,text = '注册',width = 8,command=zhuce).place(x=110,y=100)

在这个基础上我还加了登录 注册两个按钮 用于后面的登录注册的操作

二、制作过程中的理解

如果想要做到登录注册的操作,首先需要有一个储存用户名和密码的东西,登录时输入的文本如果在这个东西里面说明用户名密码都正确 就能完成登录,注册时输入的文本也能够储存在里面,要做到这些,字典是个不二选择,因为它有着‘键值:内容’的结构,非常适合储存用户名和密码

users_pw = {'admin':'123456'} #一个空字典 默认用户名密码为admin 123456

创建一个空字典,我们可以设置一组数据作为默认用户名密码。

创建了一个储存数据 的字典还不够,我们要做到登录注册的效果还需要’登录‘,’注册‘这两个按钮的作用,当我们点击注册按钮时,程序会捕捉到这个操作,并且执行相应的操作。

'鼠标点击登录时会执行的操作'
def login():
    if users in users_pw :
        if passwords == users_pw[users]:
            print('登录成功')
        else:
            print('登录失败')
    else:
        print('没有该用户')
 
Button(root,text = '登录',width = 8,command= login).place(x=40,y=100)
Button(root,text = '注册',width = 8,command=zhuce).place(x=110,y=100)

注册同理 当然这段代码是执行不了的只是提供个思路 具体后面会说 通过按钮Button方法中的command参数我们就可以在点击按钮时调用我们事先写好的函数。

三、制作过程中遇到的难点

在制作过程中遇到过一些难题,比如如何获取文本框中用户输入的东西。

四、解决问题的方法

我查阅了很多资料,终于找到了方法,就是在Entry控件中的textvariable参数 它可以把这个输入框对象的某个属性绑定给一个变量 然后通过<变量>.StringVar() 方法获取输入框中的内容。

users = user1.get()      #获取user1中存储的文本框中的内容
user = Entry(root,width=20,textvariable = user1).place(x=100,y=1)      
#textvariable参数的使用是把文本框中的内容传递给变量的关键

这个难题解决后,之后的工作也就简单了,只需要把每个控件的位置,参数调整一下就可以了。

完整代码以及运行结果如下:

#place布局.py
from tkinter import *  #导入tkinter库
users_pw = {'admin':'123456'}   #一个空字典 默认用户名密码为admin 123456
'点击登录按钮执行的函数'
def login():
    def close():
        window.destroy()
    users = user1.get()
    passwords = password1.get()
    if users in users_pw :
        if passwords == users_pw[users]:
            window = Tk()
            window.title ('恭喜!')
            window.geometry('200x180+200+200')
            label = Label(window,text = '登录成功',font=('华文行楷',20))
            label.pack()
            button = Button(window,text ='关闭',font=('华文行楷',20),command=close)
            button.pack()
 
        else:
            window = Tk()
            window.title('错误!')
            window.geometry('200x180+200+200')
            label = Label(window,text='登录失败',font=('华文行楷',20))
            label.pack()
            button = Button(window,text='关闭',font=('华文行楷',20), command=close)
            button.pack()
    else:
        print('没有该用户')
'点击注册按钮执行的函数'
def zhuce():
    def close():
        window.destroy()
    users = user1.get()      #获取user1中存储的文本框中的内容
    passwords = password1.get() #同上
    if (users =='') or (passwords == ''):
        window = Tk()
        window.title('错误!')
        window.geometry('200x180+200+200')
        label = Label(window, text='注册失败', font=('华文行楷', 20))
        label.pack()
        button = Button(window, text='关闭', font=('华文行楷', 20), command=close)
        button.pack()
 
    elif users in users_pw:
        window = Tk()
        window.title('错误!')
        window.geometry('200x180+200+200')
        label = Label(window, text='注册失败已有此用户名', font=('华文行楷', 20))
        label.pack()
        button = Button(window, text='关闭', font=('华文行楷', 20), command=close)
        button.pack()
    else:
        users_pw[users] = passwords
        window = Tk()
        window.title('恭喜!')
        window.geometry('200x180+200+200')
        label = Label(window, text='注册成功', font=('华文行楷', 20))
        label.pack()
        button = Button(window, text='关闭', font=('华文行楷', 20), command=close)
        button.pack()
'窗口创建'
root = Tk()
root.title('登录')
root.geometry('300x300')
root.config(bg = '#ffcc00')
'创建两个文本输入框 并用StringVar()把文本框中的内容跟user1 password1绑定'
user1 = StringVar ()
password1 =StringVar()
Label(root,text='用户名',width = 6,font=('华文行楷',20)).place(x=1,y=1)
user = Entry(root,width=20,textvariable = user1).place(x=100,y=1)      #textvariable参数的使用是把文本框中的内容传递给变量的关键
Label(root,text = '密码',width = 6,font=('华文行楷',20)).place(x=1,y=45)
password = Entry(root,width =20,textvariable = password1 ).place(x=100,y=45)
'创建两个按钮 用command参数使得在点击按钮时运行对应的函数'
Button(root,text = '登录',width = 8,command= login).place(x=40,y=100)
Button(root,text = '注册',width = 8,command=zhuce).place(x=110,y=100)
root.mainloop()  #显示窗口

到此这篇关于Python tkinter库实现登录注册基本功能的文章就介绍到这了,更多相关Python tkinter登录注册内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Pythontkinter库实现登录注册基本功能

本文链接: https://www.lsjlt.com/news/176320.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Pythontkinter库实现登录注册基本功能
    目录一、各种组件的布局二、制作过程中的理解三、制作过程中遇到的难点四、解决问题的方法tkinter库作为python的标准库之一,它的功能性十分强大,下面我将使用tkinter库制作...
    99+
    2022-12-30
    Python tkinter登录注册 Python tkinter Python登录注册
  • 基于Spring5实现登录注册功能
    本文实例为大家分享了Spring5实现登录注册功能的具体代码,供大家参考,具体内容如下 准备: 根据分析用户注册登录都需要的信息为①username(String)②userid(I...
    99+
    2024-04-02
  • Python实现注册登录功能
    用Python写个注册登录功能,供大家参考,具体内容如下 本文是用Python写一个注册登录功能,难度不大,很适合练手主要就是用列表和字典,以及逻辑判断用到的第3方库模块是time模...
    99+
    2024-04-02
  • Node.js实现登录注册功能
    本文实例为大家分享了Node.js实现登录注册功能的具体代码,供大家参考,具体内容如下 目录结构 注册页面: reg.html <!DOCTYPE html> <...
    99+
    2024-04-02
  • Android实现登录注册功能
    本文实例为大家分享了Android实现登录注册功能的具体代码,供大家参考,具体内容如下 运行环境 Android Studio 总体效果图 一、 设计注册页面的布局 二、完成注册...
    99+
    2024-04-02
  • Android基于Sqlite实现注册和登录功能
    Android中基于Sqlite实现注册和登录功能,供大家参考,具体内容如下 前言 写这篇博客主要是为了巩固一下学的Sqlite知识以及梳理一下这个项目的逻辑 实现逻辑 项目的图片...
    99+
    2024-04-02
  • python实现登录与注册功能
    本文实例为大家分享了python实现登录与注册的具体代码,供大家参考,具体内容如下 1. 案例介绍 本例设计一个用户登录和注册模块,使用 Tkinter 框架构建界面,主要用到画布、...
    99+
    2024-04-02
  • NodeJs+MySQL实现注册登录功能
    本文实例为大家分享了NodeJs+MySQL实现注册登录功能的具体代码,供大家参考,具体内容如下 之前写过一个没有连接数据库的注册与登陆的实现,这次加上了数据库 刚刚接触后端,很多不...
    99+
    2024-04-02
  • 基于Java怎么实现QQ登录注册功能
    这篇文章主要介绍“基于Java怎么实现QQ登录注册功能”,在日常操作中,相信很多人在基于Java怎么实现QQ登录注册功能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”基于Java怎么实现QQ登录注册功能”的疑...
    99+
    2023-06-30
  • 基于struts2和hibernate实现登录和注册功能
    本文实例为大家分享了struts2和hibernate实现登录和注册功能,供大家参考,具体内容如下该项目使用MySQL数据库,数据库名为test,表名info,如图所示: 2、配置web.xml(Struts2使用) &...
    99+
    2023-05-30
    struts2 hibernate 登录
  • Java基于IO流实现登录和注册功能
    案例分析: 我们之前做过的登录注册案例是把用户信息存进集合里,要用IO流实现的话,就是要把用户信息存入文件中。登录注册两个功能的具体实现是在用户操作类中,所以我们只需要在用户操作类中...
    99+
    2024-04-02
  • Android基于Sqlite怎么实现注册和登录功能
    本篇内容主要讲解“Android基于Sqlite怎么实现注册和登录功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Android基于Sqlite怎么实现注册和登录功能”吧!实现逻辑项目的图片结...
    99+
    2023-06-30
  • Python如何实现注册登录功能
    这篇文章给大家分享的是有关Python如何实现注册登录功能的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体内容如下本文是用Python写一个注册登录功能,难度不大,很适合练手主要就是用列表和字典,以及逻辑判断用...
    99+
    2023-06-29
  • node.js实现简单登录注册功能
    本文实例为大家分享了node.js实现简单登录注册的具体代码,供大家参考,具体内容如下 1、首先需要一个sever模块用于引入路由,引入连接数据库的模块,监听服务器2、要有model...
    99+
    2024-04-02
  • Spring MVC+mybatis实现注册登录功能
    本文实例为大家分享了Spring MVC mybatis实现注册登录功能的具体代码,供大家参考,具体内容如下前期准备: 如下图所示,准备好所需要的包 新建工程,导入所需要的包,在web.xml中配置好所需要的,如下<...
    99+
    2023-05-31
    spring mvc mybatis
  • QT实现用户登录注册功能
    本文实例为大家分享了QT实现用户登录注册的具体代码,供大家参考,具体内容如下 1、login.h #ifndef LOGIN_H #define LOGIN_H #include ...
    99+
    2024-04-02
  • java+mysql实现登录和注册功能
    初学JAVA  EE,老师留下一小作业,用JAVA实现与服务器端交互,实现登录和注册功能,初学一种专业课很多老师都会留下一种让学生实现登录和注册的作业。 下面是记录的实现步...
    99+
    2024-04-02
  • java注册登录功能如何实现
    Java注册登录功能可以通过以下步骤来实现:1. 创建数据库表:- 创建一个用户表,包括用户ID(主键),用户名,密码等字段。2. ...
    99+
    2023-08-11
    java
  • android登录注册功能如何实现
    要实现Android的登录注册功能,你可以按照以下步骤进行操作:1. 创建一个布局文件来设计登录和注册界面。可以使用EditText...
    99+
    2023-10-20
    android
  • Android用SharedPreferences实现登录注册注销功能
    Android用SharedPreferences实现登录注册注销功能 前言 本文用SharedPreferences本地缓存账号信息来实现登录注册功能,以及退出注销功能。 一、本文...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作