2011-06-23 31 views
1

我目前正在開發一個GUI設計,並希望在兩個獨立的QListView之間添加自己的QStringListModels的拖放功能。在PySide中使用dataChanged()

我可以通過啓用各個視圖的功能進行拖放,但我無法找到一種方法來「觸發」某個項目以觸發事件。我認爲這將通過dataChanged()完成,後者在QListView中繼承,但無法計算出QModelIndex以及如何在dataChanged的參數中使用它。

使其進一步複雜化,一個列表有項目,另一個沒有;我正在嘗試從填充列表中拖動項目以填充空列表。

我的攻擊計劃是觸發一個事件,類似於LineEdit的textChanged信號,然後處理視圖更改信息,並相應地更新。

你如何使用dataChanged/QModelIndex?有一個更好的方法嗎?

在此先感謝,歡呼!

回答

1

您是否可以更新帖子,提供更多關於您在代碼中實際執行的信息?

我認爲它應該工作的方式是重新實現QListView中的dataChanged插槽。當該項目被刪除時,dataChanged被調用,QModelIndex被添加到QListView的模型中,這樣你就可以根據添加的項目進行任何你想要的處理。