Название: Изменить текст в QTreeWidgetItem Отправлено: Yu/2 от Май 14, 2007, 16:55 Можно ли программно изменить текст в QTreeWidgetItem (не важно в какой колонке) так, чтобы не прилетел сигнал itemChanged в соответствующий QTreeWidget?
Название: Re: Изменить текст в QTreeWidgetItem Отправлено: pastor от Май 14, 2007, 17:10 Попробуй так:
Код: bool prev = tree->blockSignals(true); Название: Изменить текст в QTreeWidgetItem Отправлено: Yu/2 от Май 14, 2007, 18:41 Отлично! Спасибо, заработало как надо.
Название: Изменить текст в QTreeWidgetItem Отправлено: Разуев Максим от Май 18, 2007, 14:16 быстрее будет использовать конкретный disconnect/connect
Название: Изменить текст в QTreeWidgetItem Отправлено: pastor от Май 18, 2007, 17:26 Цитата: "Разуев Максим" быстрее будет использовать конкретный disconnect/connect Доводы в студию. У меня противоположное мнение Название: Изменить текст в QTreeWidgetItem Отправлено: Разуев Максим от Май 18, 2007, 18:27 Ну blockSignals вроде блокирует все сигналы виджета(или я что то неправильно понял). А значит должно работать дольше чем конкретный disconnect/connect. (Кстати и в assist советуют именно это).
Название: Изменить текст в QTreeWidgetItem Отправлено: pastor от Май 18, 2007, 18:40 Да, blockSignals блокирует все сигналы. Для интереса посотри код метода blockSignals. В нём просто устанавливаеться флаг, что нужно заблокировать\разблокировать сигналы. Далее, при вхоже в метод (помоему activate) испускания сигнала, проверчеться этот флаг и если он истина (сигналы блокированы), то мы просто вываливаемся из него не выполняя при это не каких действий.
Методы connect и disconnect на порядок сложнее и объёмнее метода blockSignals. Так что, имхо, blockSignals будет работать на тотже порядок быстрее. Кстате, в ассистанте я не нашёл, что лучше юзать connect\disconnect Название: Изменить текст в QTreeWidgetItem Отправлено: Racheengel от Май 18, 2007, 19:48 blockSignals для этого и придуман, connect и disconnect как раз наиболее тормознутая часть.
Название: Изменить текст в QTreeWidgetItem Отправлено: Разуев Максим от Май 19, 2007, 00:01 Учтем.
|