将 QTreeView 与 QStandardItemModel 和 QSortFilterProxyModel 一起使用时出现问题。当我尝试从源模型中删除行时,我的程序崩溃了。在这个地方
parent->removeRow(item->row());
堆栈看起来像这样
0 ?? /usr/lib/x86_64-linux-gnu/libQtGui.so.4 0
1 ?? /usr/lib/x86_64-linux-gnu/libQtGui.so.4 0
2 QMetaObject::activate(QObject*, QMetaObject const*, int, void**) /usr/lib/x86_64-linux-gnu/libQtCore.so.4
3 QAbstractItemModel::rowsRemoved(QModelIndex const&, int, int) /usr/lib/x86_64-linux-gnu/libQtCore.so.4
4 QAbstractItemModel::endRemoveRows() /usr/lib/x86_64-linux-gnu/libQtCore.so.4
5 Widget::remove_items widget.cpp
6 Widget::Widget widget.cpp
7 main main.cpp
我正在使用带有 Qt 4.8.3 的 kubuntu 12.10。
我的代码有错误还是Qt的错误?
谢谢。
我尝试使用 4.8.4 构建项目并且它有效。所以我认为,这是 Qt 的错误