Использование dataChanged () в PySide - PullRequest
1 голос
/ 23 июня 2011

В настоящее время я работаю над дизайном GUI и хотел бы добавить функциональность перетаскивания между двумя отдельными QListViews с их собственными QStringListModels.

Я могу перетаскивать, включив функциональность отдельных представлений, но не могу найти способ «отбрасывания» элемента, чтобы вызвать событие. Я думал, что это будет сделано через dataChanged (), который наследуется в QListView, но у него возникли проблемы с вычислением QModelIndex и как использовать это в аргументах dataChanged.

Чтобы еще больше усложнить это, в одном списке есть пункты, а в другом нет; Я пытаюсь перетащить элементы из заполненного списка, чтобы заполнить пустой список.

План атаки, который у меня был, заключался в том, чтобы вызвать событие, подобное сигналу LineEdit textChanged, а затем обработать информацию об изменении представления и соответствующим образом обновить.

Как вы используете dataChanged / QModelIndex? Есть ли лучший способ сделать это?

Заранее спасибо, ура!

1 Ответ

1 голос
/ 23 августа 2011

Не могли бы вы обновить пост, добавив немного больше информации о том, что вы на самом деле делаете в коде?

Я думаю, что он должен работать так, чтобы вы заново внедрили слот dataChanged в QListView.Когда элемент отбрасывается, dataChanged вызывается с помощью QModelIndex (ов) элемента (ов), добавленных в модель QListView, так что вы можете выполнять любую обработку на основе добавленного элемента (ов).

...