我正在使用以下代码创建model
:
QStandardItemModel table_model(4,4);
for(int row=0; row<4; row++){
for (int column=0; column<4; column++){
QStandardItem* item = new QStandardItem((QString("100")));
table_model.setItem(row,column,item);
}
}
然后,将其传递给
QTableView
,如下所示:QStandardItemModel* model = &table_model;
ui->table->setModel(model);
ui->table->show();
但是出了点问题。
QTableView
没有显示任何内容,只是整个空白。但是,当且仅当我单击触发按钮(创建模型并将其链接到QTableView
)时,我才能看到4x4表,但没有任何数据。 “单击”后,所有内容立即消失(仅是单击按钮的时刻)。那我想念什么呢? - 谢谢
最佳答案
您在堆栈上创建模型,并传递一个指针,该指针在将方法保留在声明它的位置后立即失效。
QStandardItemModel * table_model = new QStandardItemModel(4,4);