我们通常在Qt中这样设置视图模型:
如果你问我为什么想这么做,我的情况和这个人的帖子非常相似。当第一个视图没有选择或为空/无效/任何东西时,我想让第二个视图显示真正的空白:没有标题、列、垃圾数据。在那种情况下,从视图中删除一个模型似乎是相当合理的。
我尝试过一个肮脏的技巧:
view->setModel(model);
但是有没有办法从视图中移除模型?我的意思是让视图保持空白,就像刚创建时没有设置任何模型一样。如果你问我为什么想这么做,我的情况和这个人的帖子非常相似。当第一个视图没有选择或为空/无效/任何东西时,我想让第二个视图显示真正的空白:没有标题、列、垃圾数据。在那种情况下,从视图中删除一个模型似乎是相当合理的。
我尝试过一个肮脏的技巧:
*view = QTableView();
但是Qt会处理这种恶意行为并将operator=
私有化。
view->setModel(nullptr)
不起作用吗? - G.M.