Qt tableview加载数据

Posted herd

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt tableview加载数据相关的知识,希望对你有一定的参考价值。

Qt tableview加载数据

//把数据加载到tableView
void ImportData::loadDataInTableView()
{
    if (student_vec.size()>0)
    {
        if (pageNum>student_vec.size())
        {
            pageNum = student_vec.size();
        }
        else
        {
            pageNum = 30;
        }

        //qDebug()<< "student_vec size:" << student_vec.size() << "  page num:" << pageNum;
        student_model->clear();
        setTableHeader();
        int k = 0;
        for (int k1 = (indexPage - 1)*pageNum; k1<indexPage*pageNum; k1++)
        {
            if (k1<student_vec.size())
            {
                Student studentIndex = student_vec.at(k1);
                student_model->setItem(k, 0, new QStandardItem(QString::number(studentIndex.getID())));
                student_model->setItem(k, 1, new QStandardItem(studentIndex.getName()));
                if (studentIndex.getSex() == "1")
                {
                    student_model->setItem(k, 2, new QStandardItem(QString::fromLocal8Bit("")));
                }
                else
                {
                    student_model->setItem(k, 2, new QStandardItem(QString::fromLocal8Bit("")));
                }

                student_model->setItem(k, 3, new QStandardItem(studentIndex.getBirthday()));
                student_model->setItem(k, 4, new QStandardItem(QString::number(studentIndex.getWeight())));
                student_model->setItem(k, 5, new QStandardItem(QString::number(studentIndex.getHeight())));
                student_model->setItem(k, 6, new QStandardItem(studentIndex.getPhoneNum()));

                student_model->setItem(k, 7, new QStandardItem(studentIndex.getAddress()));
                student_model->setItem(k, 8, new QStandardItem(studentIndex.getSchoolName()));
                student_model->setItem(k, 9, new QStandardItem(studentIndex.getSchoolType()));
                student_model->setItem(k, 10, new QStandardItem(QString::number(studentIndex.getGradeNum())));

                student_model->setItem(k, 11, new QStandardItem(QString::number(studentIndex.getClassNum())));
                student_model->setItem(k, 12, new QStandardItem(studentIndex.getSID()));
                student_model->setItem(k, 13, new QStandardItem(studentIndex.getIDCardNum()));

                k++;
            }
        }
    }
    import_data_ui.tableView_list->setModel(student_model);
}

技术图片

以上是关于Qt tableview加载数据的主要内容,如果未能解决你的问题,请参考以下文章

QT中table view怎么显示sqlite数据库的内容?

QML QT导入CSV文件并使用python在Tableview中显示

QT 实用代码片段

怎么用Qt的TableView来显示数据,数据有些来自MySQL的表中(多张不同的表),并且有些数据并不是从MySQL取

Qt5 - 在 QML TableView 中显示动态数据模型

请问在QT4中我用QTableView 和QSqlTableModel操作数据库,我想改变tableview某行的背景色应该怎么做?