在 qt 中清除/重置模型(删除所有行)

新手上路,请多包涵

我对重置或清除与 QAbstractItemModel 关联的数据的正确方法感到困惑。

我正在编写一个应用程序,用户可以在其中使用一组新数据(空或小)“重新开始”。

当用户提出此请求时,我是否应该删除旧模型?还是我应该不理会模型并删除所有行?

问候,丹 O

原文由 Dan O 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.3k
2 个回答

一般来说,我希望模型对变化做出反应并采取必要的行动来更新它的视图(当然是间接的)。但是,编程模型可以是(=是)PITA,所以如果我正在审查创建新模型并删除旧模型的代码,我可能会仔细研究。仅当您确定用户只会删除所有行时才执行此操作。如果用户可能会逐步从模型中删除项目,那么您最好首先正确实施删除……

此外, ModelTest 可能会帮助您发现 Qt 模型的问题。

原文由 larsmoa 发布,翻译遵循 CC BY-SA 4.0 许可协议

如果用户真的用一组新数据重新开始,那么简单地删除旧模型并创建一个新模型对我来说是有意义的。简单,有效,并且与用户正在做的事情相匹配。

原文由 Caleb Huitt - cjhuitt 发布,翻译遵循 CC BY-SA 2.5 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题