此問題與此主題中的問題類似Preserve QStandardItem subclasses in drag and drop但存在問題,我無法找到一個好的解決方案。這個話題部分幫助,但在更復雜的任務上失敗。 當我在QTreeView中創建一個項目時,我把這個項目放到了我的數組中,但當我使用拖動時&刪除項目被刪除,我無法再訪問它。我知道它是因爲拖放複製項目而不是移動它,所以我應該使用setData
我寫了一個派生自QAbstractModelItem的類。它在QTreeView上使用。令人遺憾的是,官方文檔示例並未顯示如何添加或刪除模型上的項目。我認爲這很容易做到,所以我闖入了它。問題是刪除選定的對象會導致異常。例如: 用戶單擊QTreeView上的一行,並希望將其與其所有子項(如果有)一起刪除。這是一個被執行的代碼: MyModel.cpp:
// This gets called w