Сделайте список флажков в Qt4 [PyQt4] - PullRequest
0 голосов
/ 08 февраля 2011

Эй.Я работаю над проектом, портирую программное обеспечение с Qt3 на Qt4.Это в PyQt, но я в порядке, отвечая так, как если бы я работал с C ++ и оригинальными библиотеками Qt4.

В старом коде используются ListView с флажками.При попытке найти eqvalient для Qt4 nokia советует не использовать Q3CheckListItem в новом коде, но нет ссылок на Qt4 eqvalient.

Решение, похоже, заключается в наличии делегата, и установите его для элементов.Как это myListView.setDelegate(delegate).Предполагается, что делегат установит флажки и так далее, но я не могу найти никаких примеров или учебных пособий по этому вопросу.

Спасибо

1 Ответ

3 голосов
/ 08 февраля 2011

Вам не нужны делегаты, чтобы иметь проверяемые элементы в вашем представлении, вам просто нужно соответствующим образом реализовать вашу модель. Вернуть Qt.ItemIsUserCheckable в реализации .flags() и обработать Qt.CheckStateRole в реализациях .data() и .setData() ( пример ).

...