QT项目六:简易客户信息管理系统

1,简介

刚与几位朋友合伙创业那会,因为我在公司负责软件,销售问我有没有什么软件可以管理他的客户信息,不用太复杂。

我了解了一下具体需求,就是可以把客户按照地域、类型等进行分类,然后存储一些基本信息,比如名称、地址、联系人信息、采购情况等,可以增删、搜索。

我说现成的有些软件太臃肿也不一定适合,我给你写一个吧

他问我多久,太麻烦就算了,我说没事一天应该可以写出来

哎这牛皮吹的,说只要一天,搞不完不好意思啊,我硬是一个人加班加点到凌晨3点给弄出来了

2,效果

窗口高度刚好把地域全部覆盖,省得拖滚动条;

三种过滤方式:点击tree里的节点按地域过滤、在筛选的combobox里按单位类型过滤、在搜索里按关键字过滤;

数据使用sqlite存储;

点按钮增加、删除记录;

双击一行进行修改;

3,一些设计思路

左侧的地域树,因为都是固定信息,直接用一个QTreeWidget在UI设计器把内容填好了。

中间使用QTableView显示记录。

数据使用程序exe目录下的crm.db文件,sqlite,没有就创建。

数据过滤:开始准备用代理model,后来觉得直接根据过滤条件刷新model就完了,数据量也不大不考虑效率问题。

其中关键字过滤需要把所有列的内容都匹配下。

4,源码下载

演示程序:https://pan.baidu.com/s/1AjAJSve2enNs5WqS1-Pmnw?pwd=wu74 
提取码:wu74

源码下载(现在发链接审核不过):

 

可以学到:
1,信息管理系统的界面布局、程序结构设计
2,Qt的树控件、表格控件的使用
3,数据按多种条件过滤显示、刷新
4,数据持久化、小型数据库使用

  • 28
    点赞
  • 150
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 22
    评论
大一下程序设计课(c++)做的课程设计。 要求与功能实现: 1)问题描述 住宿学生信息包括:学号、姓名、性别、年龄、班级、用电量、用水量等信 息。教工信息包括职工号、姓名、性别、年龄、工作部门、用电量、用水量等信息。能计算出学生和教工每月所要交的电费和水费。定义一个人员类,实现学生和教工共同的信息和行为。 2)功能要求 (1)添加功能:程序能够添加不同学生和教工的记录,提供选择界面供用 户选择所要添加的类别,要求编号号要唯一,如果添加了重复编号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:可根据姓名、用水量、用电量信息对已添加的学生或教工 记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。 (3)显示功能:可显示当前系统中所有学生和教工的记录,每条记录占据 一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意编号 的唯一性。 (5)删除功能:主要实现对已添加的学生或教工记录进行删除。如果当前 系统中没有相应的记录,则提示“记录为空!”并返回操作。 (6)统计功能:能根据多种参数进行统计。能统计学生和教工的用水用电 量、所要交纳的电费和水费、未交纳水电费的人员信息等。 (7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行 使用。 提示:代码是用vs2008+qt4.7写的。最后一个功能没有实现。有些奇奇怪怪的功能不知从何下手,也没实现。有深入了解或问题的可以私信我。 (第一次写gui,自学的。写得烂,大神轻喷) 配套开发环境在此: vs:http://afanihao.cn/vs.jsp qt:https://share.weiyun.com/8bcbb391c9c31f7dd52678583e8e9e08
为了开发一个Qt学生信息管理系统,我们需要以下步骤: 1.设计数据库模式,包括学生信息表、课程信息表、成绩信息表等。 2.使用Qt Creator创建一个新的Qt Widgets应用程序项目。 3.在Qt Creator中创建UI界面,包括主窗口、学生信息窗口、课程信息窗口、成绩信息窗口等。 4.使用Qt的SQL模块连接数据库,并实现对学生信息、课程信息、成绩信息的增删改查操作。 5.在主窗口中添加菜单栏和工具栏,实现对学生信息、课程信息、成绩信息的管理。 6.在学生信息窗口、课程信息窗口、成绩信息窗口中添加表格控件,显示相应的信息。 7.使用多线程技术,实现对学生信息、课程信息、成绩信息的导入导出操作。 8.使用Qt的图表模块,实现对学生成绩的统计和分析。 以下是一个简单的示例代码,用于连接数据库并显示学生信息: ```cpp #include <QtSql> #include <QTableView> int main(int argc, char *argv[]) { QApplication a(argc, argv); // 连接数据库 QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL"); db.setHostName("localhost"); db.setDatabaseName("test"); db.setUserName("root"); db.setPassword("123456"); if (!db.open()) { qDebug() << "Failed to connect to database."; return 1; } // 查询学生信息 QSqlQueryModel *model = new QSqlQueryModel; model->setQuery("SELECT * FROM student"); QTableView *view = new QTableView; view->setModel(model); view->show(); return a.exec(); } ```
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

逆枫゛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值