寻找最佳方法,只需留下几个可编辑的单元格即可读取整个表格。
我尝试的是为每个单独的单元格分配不可编辑的标志,但需要编辑的单元格除外。
ui.budget_tab7->item(3,3)->setFlags(ui.budget_tab7->item(3,3)->flags() & Qt::ItemIsEditable | Qt::ItemIsSelectable);
这不是最好的方法。
是否可以通过这样做
来使整个表格不可编辑ui.budget_tab7->setEditTriggers(QAbstractItemView::NoEditTriggers);
然后在几个单元格上应用某种方法使单元格可编辑?
答案 0 :(得分:0)
这取决于你在这里想要实现的目标。一种选择是在表格中使用QStandardModel。通过这种方式,您可以输入QStandardItems这些非常容易配置的内容(请检查此课程的所有设置者,以了解它的实际功能)。
QTableWidget* view = new QTableWidget;
QStandardItemModel* model = new QStandardItemModel;
view->setModel(model);
...
QStandardItem* new_item = new QStanrdItem("A");
new_item->setEditable(false);
model->setItem(0,0,new_item);
但是,它实际上取决于您的表格显示内容以及您希望如何存储/访问数据。实现自己的QAbstractItemModel通常是获得所需功能的最佳方式。