我正在使用以下代码创建一个模型
:
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);
关于c++ - Qt:c++:QTableView不显示我的模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16058270/