基于python的Tkinter编写登陆注册界面

发布时间 - 2026-01-11 02:07:35    点击率:

tkinter创建登陆注册界面,供大家参考,具体内容如下

import tkinter as tk
from tkinter import messagebox
 
#设置窗口居中
def window_info():
 ws = window.winfo_screenwidth()
 hs = window.winfo_screenheight()
 x = (ws / 2) - 200
 y = (hs / 2) - 200
 print("%d,%d" % (ws, hs))
 return x,y
 
#设置登陆窗口属性
window = tk.Tk()
window.title('欢迎使用停车场收费系统')
a,b=window_info()
window.geometry("450x300+%d+%d"%(a,b))
 
#登陆界面的信息
tk.Label(window,text="停车场收费系统",font=("宋体",32)).place(x=80,y=50)
tk.Label(window,text="账号:").place(x=120,y=150)
tk.Label(window,text="密码:").place(x=120,y=190)
#显示输入框
var_usr_name = tk.StringVar()
#显示默认账号
var_usr_name.set('1400370101')
entry_usr_name=tk.Entry(window,textvariable=var_usr_name)
entry_usr_name.place(x=190,y=150)
var_usr_pwd = tk.StringVar()
#设置输入密码后显示*号
entry_usr_pwd = tk.Entry(window,textvariable=var_usr_pwd,show='*')
entry_usr_pwd.place(x=190,y=190)
 
#登陆函数
def usr_login():
 #获取输入的账号密码
 usr_name = var_usr_name.get()
 usr_pwd = var_usr_pwd.get()
 #获取存储的账户信息,此处使用的是数据库,调用数据库查询函数,也可以使用其他方式,如文件等
 dicts = SQL.load('login')
 print(dicts)
 bool = False
 for row in dicts:
 print(row.get("name"))
 if usr_name == row["name"]:
  bool = True
  pwd = row["password"]
  print(row)
 if bool == True:
 if usr_pwd == pwd:
  tk.messagebox.showinfo(title='Welcome', message='How are you?' +usr_name)
  mainwindow()
 else:
  tk.messagebox.showerror(message='对不起,输入错误,请重试!')
 else:
 is_sign_up = tk.messagebox.askyesno('Welcome', '您还没有注册,是否现在注册呢?')
 if is_sign_up:
  usr_sign_up()
#注册账号
def usr_sign_up():
 def sign_to_Pyhon():
 np = new_pwd.get()
 npc = new_pwd_confirm.get()
 nn = new_name.get()
 
 dicts = SQL.load('login')
 print(dicts)
 bool = False
 for row in dicts:
  if nn == row["name"]:
  bool = True
  print(row)
 if np!=npc:
  tk.messagebox.showerror('对不起','两次密码输入不一致!')
 elif bool:
  tk.messagebox.showerror(('对不起','此账号已经存在!'))
 else:
  try:
  SQL.insert_login(str(nn),str(np))
  tk.messagebox.showinfo('Welcome','您已经注册成功!')
  except:
  tk.messagebox.showerror(('注册失败!'))
  window_sign_up.destroy()
 #创建top窗口作为注册窗口
 window_sign_up = tk.Toplevel(window)
 window_sign_up.geometry('350x200')
 window_sign_up.title('注册')
 
 new_name = tk.StringVar()
 new_name.set('1400370115')
 tk.Label(window_sign_up,text='账号:').place(x=80,y=10)
 entry_new_name = tk.Entry(window_sign_up,textvariable=new_name)
 entry_new_name.place(x=150,y=10)
 
 new_pwd = tk.StringVar()
 tk.Label(window_sign_up, text='密码:').place(x=80, y=50)
 entry_usr_pwd = tk.Entry(window_sign_up,textvariable=new_pwd,show='*')
 entry_usr_pwd.place(x=150, y=50)
 
 new_pwd_confirm = tk.StringVar()
 tk.Label(window_sign_up,text='再次输入:').place(x=80,y=90)
 entry_usr_pwd_again = tk.Entry(window_sign_up,textvariable=new_pwd_confirm,show='*')
 entry_usr_pwd_again.place(x=150, y=90)
 
 btn_again_sign_up = tk.Button(window_sign_up,text='注册',command=sign_to_Pyhon)
 btn_again_sign_up.place(x=160,y=130)
 
#登陆和注册按钮
btn_login = tk.Button(window,text="登陆",command=usr_login)
btn_login.place(x=170,y=230)
btn_sign_up = tk.Button(window,text="注册",command=usr_sign_up)
btn_sign_up.place(x=270,y=230)
 
window.mainloop()

这是我写的登陆注册界面,使用tkinter,可以实现简单的登陆和注册账号,使用的主要是Label,Entry和Button组件。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# python Tkinter登陆注册界面  # Tkinter登陆注册界面  # Tkinter登陆注册  # python中Tkinter 窗口之输入框和文本框的实现  # Python中使用Tkinter模块创建GUI程序实例  # Python中TK窗口的创建方式  # 收费系统  # 的是  # 这是  # 两次  # 可以使用  # 可以实现  # 没有注册  # 您已经  # 您还  # 我写  # 具体内容  # 大家多多  # 宋体  # 输入框  # 输入密码  # 主要是  # 注册成功  # 数据库查询  # 登陆界面  # 请重试 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在云主机上快速搭建网站?  如何在阿里云服务器自主搭建网站?  Laravel如何发送邮件_Laravel Mailables构建与发送邮件的简明教程  Laravel项目怎么部署到Linux_Laravel Nginx配置详解  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?  简单实现jsp分页  Python文件异常处理策略_健壮性说明【指导】  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布  千库网官网入口推荐 千库网设计创意平台入口  如何用美橙互联一键搭建多站合一网站?  JavaScript如何实现错误处理_try...catch如何捕获异常?  制作网站软件推荐手机版,如何制作属于自己的手机网站app应用?  什么是javascript作用域_全局和局部作用域有什么区别?  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  如何在景安云服务器上绑定域名并配置虚拟主机?  Laravel如何配置中间件Middleware_Laravel自定义中间件拦截请求与权限校验【步骤】  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  极客网站有哪些,DoNews、36氪、爱范儿、虎嗅、雷锋网、极客公园这些互联网媒体网站有什么差异?  Laravel如何与Docker(Sail)协同开发?(环境搭建教程)  绝密ChatGPT指令:手把手教你生成HR无法拒绝的求职信  敲碗10年!Mac系列传将迎来「触控与联网」双革新  如何在搬瓦工VPS快速搭建网站?  Python结构化数据采集_字段抽取解析【教程】  制作旅游网站html,怎样注册旅游网站?  网站制作壁纸教程视频,电脑壁纸网站?  手机软键盘弹出时影响布局的解决方法  HTML5建模怎么导出为FBX格式_FBX格式兼容性及导出步骤【指南】  Laravel怎么上传文件_Laravel图片上传及存储配置  中国移动官方网站首页入口 中国移动官网网页登录  Linux系统命令中tree命令详解  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  Laravel中Service Container是做什么的_Laravel服务容器与依赖注入核心概念解析  浏览器如何快速切换搜索引擎_在地址栏使用不同搜索引擎【搜索】  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  Win11怎样安装网易有道词典_Win11安装词典教程【步骤】  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  网站制作报价单模板图片,小松挖机官方网站报价?  JavaScript如何实现继承_有哪些常用方法  郑州企业网站制作公司,郑州招聘网站有哪些?  Laravel Debugbar怎么安装_Laravel调试工具栏配置指南  为什么要用作用域操作符_php中访问类常量与静态属性的优势【解答】  Laravel如何创建自定义中间件?(Middleware代码示例)  北京专业网站制作设计师招聘,北京白云观官方网站?  如何在万网主机上快速搭建网站?  Laravel路由Route怎么设置_Laravel基础路由定义与参数传递规则【详解】  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  Laravel怎么使用Collection集合方法_Laravel数组操作高级函数pluck与map【手册】