资源简介
Qt实现的一个简单的学生学籍管理系统。带mysql数据库脚本,以及使用方法。
代码片段和文件信息
#include “admindialog.h“
#include “ui_admindialog.h“
#include
#include
AdminDialog::AdminDialog(QWidget *parent) :
QWidget(parent)
m_ui(new Ui::AdminDialog)
{
m_ui->setupUi(this);
this->InitForm();
managegrade = new AdminGradeDialog;
modifyPwd = new AdminSystemDialog;
m_ui->stackedWidget->addWidget(managegrade);
m_ui->stackedWidget->addWidget(modifyPwd);
}
AdminDialog::~AdminDialog()
{
delete m_ui;
}
void AdminDialog::InitForm()
{
//将学号,班级,系名 添加到下拉框中(调用自己写的函数)
this->BindData(“sno““t_student“m_ui->comboBoxId);
this->BindData(“classno““t_student“m_ui->comboBoxClass);
this->BindData(“deptno““t_student“m_ui->comboBoxDepart);
QueryModel = new QSqlQueryModel(this);
//初始化表格列名和列宽
ColumnName[0] = “学号“;
ColumnName[1] = “姓名“;
ColumnName[2] = “密码“;
ColumnName[3] = “身份证号“;
ColumnName[4] = “班级号“;
ColumnName[5] = “专业号“;
ColumnName[6] = “专业“;
ColumnName[7] = “联系地址“;
ColumnName[8] = “enterdate“;
ColumnName[9] = “入学时间“;
ColumnName[10] = “生日“;
ColumnName[11] = “出生地“;
ColumnName[12] = “生日“;
ColumnName[13] = “出生地“;
ColumnName[14] = “籍贯“;
ColumnWidths[0] = 100;
ColumnWidths[1] = 80;
ColumnWidths[2] = 100;
ColumnWidths[3] = 70;
ColumnWidths[4] = 60;
ColumnWidths[5] = 100;
ColumnWidths[6] = 50;
ColumnWidths[7] = 100;
ColumnWidths[8] = 80;
ColumnWidths[9] = 80;
ColumnWidths[10] = 50;
ColumnWidths[11] = 80;
ColumnWidths[12] = 80;
ColumnWidths[13] = 100;
ColumnWidths[14] = 90;
this->BindtableInfo(“t_student“m_ui->tableViewColumnNameColumnWidths);
}
void AdminDialog::BindData(QString columnName QString tableName QComboBox *cbox)
{
QSqlQuery query;
query.exec(“select “+columnName+“ from “+tableName+“ order by “+columnName+“ asc“);
while(query.next())
{
cbox->addItem(query.value(0).toString());
}
}
void AdminDialog::BindtableInfo(QString tableName QTableView *tableView QString columnNames[] int columnWidths[])
{
TableView = tableView;
QString sql = “SELECT *FROM “ + tableName+“;“;
QueryModel->setQuery(sql);
TableView->setModel(QueryModel);
//依次设置列标题、列宽等
for (int i = 0;imodel()->columnCount();i++)
{
QueryModel->setHeaderData(iQt::HorizontalcolumnNames[i]); //设置列标题
TableView->setColumnWidth(icolumnWidths[i]); //设置列宽
}
TableView->setSelectionBehavior(QAbstractItemView::SelectRows); //选中整行
}
void AdminDialog::BindDataSelect(QString tableName QTableView *tableViewQString where QString columnNames[] int columnWidths[])
{
TableView = tableView;
QString sql = “SELECT * FROM “ + tableName+where+“;“;
qDebug() < QueryModel->setQuery(sql);
TableView->setModel(QueryModel);
//依次设置列标题、列宽等
for (int i=0;i<
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 9567 2014-12-26 23:40 student.sql
文件 69339 2014-12-27 00:02 使用方法.docx
目录 0 2014-12-26 23:50 Student\
文件 835 2014-12-26 16:49 Student\Student.pro
文件 4876 2014-12-26 23:36 Student\admindialog.cpp
文件 1760 2014-12-26 23:35 Student\admindialog.h
文件 8594 2014-12-26 17:20 Student\admindialog.ui
文件 3065 2014-12-26 23:26 Student\admingradedialog.cpp
文件 1152 2014-12-26 23:25 Student\admingradedialog.h
文件 4791 2014-12-26 23:25 Student\admingradedialog.ui
文件 2012 2014-12-26 17:38 Student\adminsystemdialog.cpp
文件 453 2014-12-26 17:29 Student\adminsystemdialog.h
文件 8234 2014-12-26 18:26 Student\adminsystemdialog.ui
目录 0 2014-12-26 23:50 Student\images\
文件 18961 2014-12-26 13:27 Student\images\student.png
文件 97 2014-12-26 13:29 Student\images.qrc
文件 3508 2014-12-26 17:20 Student\logindialog.cpp
文件 517 2014-12-26 13:14 Student\logindialog.h
文件 2707 2014-12-26 12:12 Student\logindialog.ui
文件 1092 2014-12-26 13:11 Student\main.cpp
文件 1687 2014-12-26 12:28 Student\myapp.cpp
文件 1024 2014-12-26 10:49 Student\myapp.h
文件 4845 2014-12-26 23:13 Student\studentgradedialog.cpp
文件 1406 2014-12-26 22:41 Student\studentgradedialog.h
文件 10590 2014-12-26 22:45 Student\studentgradedialog.ui
文件 4808 2014-12-26 23:09 Student\widget.cpp
文件 1065 2014-12-26 14:00 Student\widget.h
文件 12864 2014-12-26 21:38 Student\widget.ui
评论
共有 条评论