Я только начал поддерживать набор встроенных плагинов Python для приложения Qt.Я также новичок в PyQt и Python, так что терпите меня.
У меня есть реализация QTreeWidget в одном диалоге, где «расширенный» сигнал не перехватывается соответствующим обработчиком.У меня есть еще одно диалоговое окно, где оно работает просто отлично.
В диалоговом окне проблемы я могу убедиться, что подключение прошло успешно.
connected = wdg.connect(wdg.treeView_,SIGNAL("expanded(QTreeViewItem*)"), wdg.expanded)
оценивается как True.Когда я нажимаю на дочерние индикаторы, чтобы развернуть элемент, знаки [+] меняются на минус, но больше ничего не происходит.Аналогично, когда я нажимаю [-], он переключается обратно на [+].Я установил ChildIndicatorPolicy, чтобы изначально установить индикатор на SHOW в обоих случаях.
В диалоговом окне, которое работает ОК, когда пользователь нажимает на знак плюс, выполняется «расширенный» обработчик.Только индикатор переключается при нажатии.
Мой код обработчика просто:
def expanded(self, item):
logging.debug("In expanded handler")
У меня есть точка останова при вызове журнала, но оператор никогда не достигается.
В диалоговом окне с ошибкой, у меня есть другой сигнал, который подключен непосредственно перед тем, что приведен выше, и он прекрасно работает:
wdg.connect(wdg.treeView_,SIGNAL("currentItemChanged(QTreeWidgetItem*, QTreeWidgetItem*)"), wdg.itemChanged)
Есть ли что-нибудь, что могло бы предотвратить срабатывание или перехват расширенного сигнала?Может быть, еще одно событие?Что я должен искать?Я понимаю, что моя номенклатура может быть немного неправильной, и я приветствую любые исправления в этом отношении.