qt项目:员工信息管理系统

开发一个员工信息管理系统
一、项目具体要求:
1、用qt开发界面,数据库用QSqlite 数据库文件名:demostudent.db
2、通过界面能够查看到数据库中员工信息表中内容,包括员工姓名、年龄、性别、
成绩、生日、基本工资和照片。
3、能够查看指定记录,修改和编辑员工信息
4、员工信息中包含照片,界面上可以显示学员照片并且可以修改学员照片
5、通过界面可增加员工记录,可以删除指定的学员记录

二、项目界面展示
1、主界面:通过openDB按钮打开指定的数据库文件,将数据库表中的学员信息显示在主界面中tableView中。
在这里插入图片描述
其它的按钮依次是 插入按钮、编辑当前记录和删除指定记录
点击upSalary按钮,所有学员的基本工资增加1000

2、编辑学员信息的界面
单击编辑按钮或者双击某一个记录,则弹出如下编辑窗口
编辑窗口通过相关控件显示指定的记录各个字段的数据,包括照片信息
修改相关数据之后,点击ok按钮之后,则新数据更新到数据库中
通过setPhoto和clearPhoto两个按钮可以设置和修改照片
在这里插入图片描述

3、增加学员信息的界面
通过界面相关控件录入员工的信息,包括设置照片。
点击ok按钮,将学员信息插入到数据库表中。
在这里插入图片描述

三、项目代码实现:
1、项目中主要为两个类文件,描述界面的类文件mainWidget
和描述插入和编辑界面的类文件wDialogData
2、mainWidget类文件代码如下:
mainWidget.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

    #include <QMainWindow>
    #include <QSqlDatabase>
    #include <QSqlQueryModel>
    #include <QItemSelectionModel>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private slots:
    void on_actOpenDB_triggered();

    void on_actInsert_triggered();

    void on_actEdit_triggered();

    void on_tableView_doubleClicked(const QModelIndex &index);

    void on_actDelete_triggered();

    void on_actUpsalary_triggered();

private:
    Ui::MainWindow *ui;
    QSqlDatabase db;
    QSqlQueryModel *theModel;
    QItemSelectionModel *theSelection;

    void openTable();
    void updateRecord(int recNo);
};

#endif // MAINWINDOW_H

mainWidget.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
  • 17
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
为了开发一个Qt学生信息管理系统,我们需要以下步骤: 1.设计数据库模式,包括学生信息表、课程信息表、成绩信息表等。 2.使用Qt Creator创建一个新的Qt Widgets应用程序项目。 3.在Qt Creator中创建UI界面,包括主窗口、学生信息窗口、课程信息窗口、成绩信息窗口等。 4.使用QtSQL模块连接数据库,并实现对学生信息、课程信息、成绩信息的增删改查操作。 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(); } ```

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值