2

基本上我想删除模型中的所有行。我更喜欢使用removeRows(..)而不是clear(),因为我想保留我的标题。

我想我错过了一些东西(docu here),我的代码很简单:

int c = MainWindow::_viewDataModel->rowCount();
bool r = MainWindow::_viewDataModel->removeRows(0, c);

ceg 是 4,但r总是错误的。我已经尝试将 0 和 1 作为第一个索引。使用clear()作品。上面的代码完全没有影响。

4

1 回答 1

1

它现在正在工作。经过一些测试我的发现:

  • RemoveRows当我指定删除的模型中的行数较少时,它非常敏感。
  • 在我的特殊情况下,当模型中只有 4 行时,我确实想删除 5 行。因此_viewDataModel->removeRows(0, 4);,如果模型中只有 3 行,则根本不会删除任何内容。
  • 与预期不同的是,在这种情况下根本没有删除。
  • 我现在的解决方案是在删除之前彻底获取模型大小。
于 2012-08-06T10:20:42.530 回答