python3GUI--记账助手By:PyQt5(附下载地址)


文件大小:19.94M
点击下载~



如果安装后打不开,多半是权限问题,请使用管理员运行或者别装到C盘!

一.前言

本次使用PyQt5开发一款记账助手,支持登录注册、多账号、账单类型筛选、数据持久化、可视化,Let’s go!
请添加图片描述
请添加图片描述

二.开发环境

本项目采用Python语言及第三方库进行设计与开发,项目基于PyQt5进行构建,其软件开发环境为:
PyCharm 2021.3
Python 3.8
Windows 11

三.预览

1.登录&注册

软件启动后进入软件主界面,需要先登录。
在这里插入图片描述
没有账号需要先注册
在这里插入图片描述

2.主界面

登陆成功后是我们软件的主界面,详细展示每一笔的收支情况以及收支、结余汇总
在这里插入图片描述

3.新增账单

我们需要选择账单日期、类型、输入金额

1.当前日期

默认选择当前日期
在这里插入图片描述

2.选择日期

我们可以从日历中选择指定日期,选择的日期会展示到界面上。
在这里插入图片描述

3.添加成功

添加成功后会给予提示
在这里插入图片描述

4.删除账单

我们可以右击某一条目或者拖动鼠标选择多个条目进行账单的删除,删除之前系统会和用户确认,删除完成后会刷新数据。
在这里插入图片描述

4.筛选账单

我们可以点击左上角的“账单类型”对账单进行筛选,主要分为“收入”和“支出”及“汇总”,选择某一项之后会勾选。这里我切换了另一个账号来演示。
在这里插入图片描述

5.账单数据汇总

汇总维度分为:日、月、年,分别汇总收支情况,使用“饼图”展示每一部分占比。

1.日账单

在这里插入图片描述

2.月账单

在这里插入图片描述

3.年账单

在这里插入图片描述

四.设计心得

1.项目代码结构

本项目以main.py作为入口,执行python main.py即可直接启动整个项目。
在这里插入图片描述

2.UI设计概览

本次开发的软件为多窗口应用,包括:

  1. 登录注册界面
  2. 主窗口
  3. 添加新账单界面

以上界面均为设计师设计,QT设计师非常适合敏捷开发。

3.UI设计详细

下面我截图展示所有UI界面

1.登录注册界面

login.ui
在这里插入图片描述

2.主窗口

home_ui.ui
在这里插入图片描述

3.添加新账单界面

new_account_ui.ui

在这里插入图片描述

4.数据库表设计

本次数据持久化采用存储数据库的方式,数据库为文件型数据库:sqlite3,
设计了两个库表,分别是:

1.用户表(Users)

用于存储用户的登录注册信息,每次用户登陆成功后更新上次登录时间,建表语句如下:

CREATE TABLE Users (  
    id INTEGER PRIMARY KEY AUTOINCREMENT,       -- 用户ID,主键,自增  
    username TEXT NOT NULL UNIQUE,                   -- 用户名,不能为空且必须唯一  
    password TEXT NOT NULL,                          -- 密码,不能为空(注意:实际存储时应加密)  
    create_time TEXT,   -- 创建时间,默认值为当前时间戳  
    last_login_time Int DEFAULT 0                        -- 上次登录时间,可以为空  
);

数据-览
在这里插入图片描述

2.账单表(Bills)

账单表存储多个字段的数据,详细记录每笔账单,可以与用户表做关联,建表语句如下:

CREATE TABLE Bills (  
    id INTEGER PRIMARY KEY AUTOINCREMENT,            -- 主键,自增  
    create_time TEXT ,   -- 创建时间,默认值为当前时间戳  
    bill_type TEXT NOT NULL,                         -- 账单类型,不能为空  
    income_or_expense TEXT NOT NULL CHECK (income_or_expense IN ('+', '-')), -- 收支,不能为空,并且只能是'+'或'-'  
    amount TEXT NOT NULL,                             -- 金额,不能为空  
    user_id INTEGER NOT NULL,                        -- 用户ID,不能为空(假设用户ID是必填项)  
    note TEXT                                        -- 备注,可以为空  
);

数据-览
在这里插入图片描述

五.总结

本次使用PyQt5开发了一款记账软件,这个项目非常适合学生来学习、练习数据库、PyQt。
在这里插入图片描述

  • 24
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值