QAbstractTableModel点击删除
时间: 2024-01-15 07:04:37 浏览: 68
您可以通过重载QAbstractTableModel类的removeRows()函数来实现删除选定行的功能。该函数接收两个参数:要删除的第一行的索引和要删除的行数。这个函数应该返回true如果删除操作成功,否则返回false。
下面是一个示例代码:
```cpp
bool MyTableModel::removeRows(int row, int count, const QModelIndex &parent)
{
beginRemoveRows(parent, row, row + count - 1);
for (int i = 0; i < count; i++)
{
m_data.removeAt(row);
}
endRemoveRows();
return true;
}
```
在上面的代码中,m_data是一个包含所有数据的数据结构。在beginRemoveRows()和endRemoveRows()之间,我们使用removeAt()函数从m_data中删除指定的行。这将自动更新表格视图中的行数和数据。
阅读全文