天天看点

Qt QTableView 如何清理列表里的数据数据初始化清理数据

数据初始化

tableView_ = new QTableView();
    model_ = new QStandardItemModel();
    tableView_->setModel(model_);

    // model 初始化
    model_->setColumnCount();
    model_->setHeaderData(, Qt::Horizontal, tr("序号"));
    model_->setHeaderData(, Qt::Horizontal, tr("审核编号"));
    model_->setHeaderData(, Qt::Horizontal, tr("审核状态"));
    model_->setHeaderData(, Qt::Horizontal, tr("含交易数"));
    model_->setHeaderData(, Qt::Horizontal, tr("txid"));
    model_->setHeaderData(, Qt::Horizontal, tr("操作"));

    // tableview 初始化
    tableView_->setSelectionBehavior(QAbstractItemView::SelectRows); // 选中整行
    tableView_->setSelectionMode(QAbstractItemView::SelectionMode::SingleSelection); // 只能单选
    tableView_->setEditTriggers(QTableView::EditTrigger::NoEditTriggers);
    tableView_->setAlternatingRowColors(true);

    tableView_->setColumnWidth(, );
    tableView_->setColumnWidth(, );
    tableView_->setColumnWidth(, );
    tableView_->horizontalHeader()->setSectionResizeMode(,QHeaderView::Interactive);
    tableView_->horizontalHeader()->setSectionResizeMode(,QHeaderView::Stretch);
    tableView_->horizontalHeader()->setSectionResizeMode(,QHeaderView::Stretch);

#ifdef QT_DEBUG
    for(int i = ; i < ; ++i) {
        QStandardItem *item = new QStandardItem();
        item->setCheckable(true);
        item->setText(QString::number(i));
        item->setCheckState(Qt::Unchecked);
        model_->setItem(i, , item);
        model_->setItem(i, , new QStandardItem("654654654"));
        model_->setItem(i, , new QStandardItem("admin"));
        model_->setItem(i, , new QStandardItem("admin"));
        model_->setItem(i, , new QStandardItem("admin"));
        model_->setItem(i, , new QStandardItem("admin"));
    }
#else
    onNextPage();
#endif
           

清理数据

model_->removeRows(,model_->rowCount());
           

这样清理数据,就不会影响到表格头部的数据了。