基于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 】
相关推荐:
香港服务器网站推广:SEO优化与外贸独立站搭建策略
如何利用DOS批处理实现定时关机操作详解
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
制作公司内部网站有哪些,内网如何建网站?
Laravel如何发送系统通知?(Notification渠道示例)
Laravel如何使用Blade组件和插槽?(Component代码示例)
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
专业型网站制作公司有哪些,我设计专业的,谁给推荐几个设计师兼职类的网站?
如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】
如何用花生壳三步快速搭建专属网站?
Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门
Laravel怎么实现搜索高亮功能_Laravel结合Scout与Algolia全文检索【实战】
Laravel如何生成API文档?(Swagger/OpenAPI教程)
Laravel PHP版本要求一览_Laravel各版本环境要求对照
如何正确下载安装西数主机建站助手?
如何快速建站并高效导出源代码?
历史网站制作软件,华为如何找回被删除的网站?
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
Laravel如何使用Facades(门面)及其工作原理_Laravel门面模式与底层机制
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程
如何登录建站主机?访问步骤全解析
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
android nfc常用标签读取总结
如何用wdcp快速搭建高效网站?
品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?
Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】
UC浏览器如何切换小说阅读源_UC浏览器阅读源切换【方法】
INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】
软银砸40亿美元收购DigitalBridge 强化AI资料中心布局
魔毅自助建站系统:模板定制与SEO优化一键生成指南
如何在IIS服务器上快速部署高效网站?
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
如何在万网ECS上快速搭建专属网站?
Laravel如何配置任务调度?(Cron Job示例)
如何选择可靠的免备案建站服务器?
如何生成腾讯云建站专用兑换码?
如何在宝塔面板中创建新站点?
西安市网站制作公司,哪个相亲网站比较好?西安比较好的相亲网站?
无锡营销型网站制作公司,无锡网选车牌流程?
惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?
详解Android——蓝牙技术 带你实现终端间数据传输
Bootstrap整体框架之JavaScript插件架构
Laravel怎么清理缓存_Laravel optimize clear命令详解
JavaScript常见的五种数组去重的方式
JS中对数组元素进行增删改移的方法总结
HTML 中动态设置元素 name 属性的正确语法详解
如何在景安云服务器上绑定域名并配置虚拟主机?
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
JavaScript Ajax实现异步通信

