У меня есть QListWidget, куда я хочу добавить группу элементов с пользовательским виджетом:
listWidget = QListWidget()
item = QListWidgetItem()
item.setFlags(item.flags() | Qt.ItemIsUserCheckable)
item.setCheckState(Qt.Unchecked)
listWidget.addItem(item)
widget = MyLabelAndPushButton()
item.setSizeHint(widget.sizeHint())
listWidget.setItemWidget(item, widget)
Как следует из названия, MyLabelAndPushButton - это просто виджет, содержащий QLabel и QPushButton в макете.Проблема в том, что я не могу использовать флажок, который появляется в списке виджетов рядом с виджетом.Это выглядит совершенно нормально, но ничего не происходит, когда я нажимаю на него.Если я удаляю строку с setItemWidget, она работает правильно.Что я делаю не так?
edit:
Сообщил об ошибке на bugreports.qt.io / browse / QTBUG-16386 , но получил ответ«API не предназначен для того, что вы собираетесь делать» и «В случае, если вы хотите отобразить пользовательский виджет, используйте QListView и подкласс QItemDelegate».Очевидно, это не ошибка, просто то, что API не может обработать.