72135d010c
只是调整改项目代码的注释和风格样式,没有功能性的变化或者修复
68 lines
2.9 KiB
C++
68 lines
2.9 KiB
C++
#ifndef EXQTABLEWIDGET_H
|
|
#define EXQTABLEWIDGET_H
|
|
|
|
#include <QMainWindow>
|
|
#include <QLabel>
|
|
#include <QTime>
|
|
|
|
namespace Ui {
|
|
class ExQTableWidget;
|
|
}
|
|
|
|
class ExQTableWidget : public QMainWindow
|
|
{
|
|
Q_OBJECT
|
|
|
|
private:
|
|
enum cellType { //自定义表格单元格TYPE的类型,创建item时使用
|
|
ctName, //姓名
|
|
ctSex, //性别
|
|
ctBirth, //出生日期
|
|
ctNation, //籍贯
|
|
ctScore, //分数
|
|
ctLikeAnime //是否喜欢二次元
|
|
};
|
|
|
|
enum fieldColNum { //自定义各个表段在表格中的列号
|
|
colName,
|
|
colSex,
|
|
colBirth,
|
|
colNation,
|
|
colScore,
|
|
colLikeAnime
|
|
};
|
|
|
|
public:
|
|
explicit ExQTableWidget(QWidget *parent = nullptr);
|
|
~ExQTableWidget();
|
|
|
|
void createItemsARow(int row, QString name, QString sex, QDate birth, QString nation, int score, bool isAnime); //为某一行创建items
|
|
|
|
private slots:
|
|
void on_btnSetHeader_clicked(); //设置表头
|
|
void on_btnInitTable_clicked(); //初始化数据表
|
|
void on_btnSetRow_clicked(); //设置表格的行数
|
|
void on_btnInsertRow_clicked(); //插入行
|
|
void on_btnAddRow_clicked(); //在最后一行添加一行
|
|
void on_btnDelRow_clicked(); //删除当前行
|
|
void on_btnAutoHeight_clicked(); //自动设置行高
|
|
void on_btnAutoWidth_clicked(); //自动设置列高
|
|
void on_btnReadToEdit_clicked(); //读取表格内容到文本
|
|
void on_chkBoxHeadEdit_clicked(bool checked); //表格可编辑模式
|
|
void on_chkBoxRowColor_clicked(bool checked); //间隔行底色
|
|
void on_chkBoxHeadRow_clicked(bool checked); //显示行表头
|
|
void on_chkBoxHeadCol_clicked(bool checked); //显示列表头
|
|
void on_radioBtnSelectItem_clicked(); //单元格选择
|
|
void on_radioBtnSelectRow_clicked(); //行选择
|
|
void on_tableWidget_currentCellChanged(int currentRow, int currentColumn, int previousRow, int previousColumn); //获取当前item和前一个(点击)item的行列号
|
|
|
|
private:
|
|
Ui::ExQTableWidget *ui;
|
|
|
|
QLabel *m_labCellIndex; //状态栏上用来显示单元格的行号、列号
|
|
QLabel *m_labCellType; //状态栏上用来显示单元格的type
|
|
QLabel *m_labStudID; //状态栏上用来显示单元格的学号
|
|
};
|
|
|
|
#endif // EXQTABLEWIDGET_H
|