Название: Вопрос по QAction Отправлено: mindz_eye от Декабрь 19, 2006, 18:22 Как сделать, чтобы для checkable QAction флаг checked выставлялся через некоторое время после клика по нему?
Иными словами, чтобы в меню нужное действие становилось выбранным только после соответствующего подтверждения сервера. Пробывал выставлять eventFilter - не помогло =( Название: Вопрос по QAction Отправлено: Dendy от Декабрь 19, 2006, 18:39 Ставишь setChekable( false ) и ловишь QAction::triggered(). После ответа сервера ставишь руками setChecked().
Название: Вопрос по QAction Отправлено: mindz_eye от Декабрь 19, 2006, 18:44 setCheckable( false ) убирает галочки выбранных действий в меню.
Нужно чтобы до ответа сервера предыдущие действие оставалось checked. Название: Вопрос по QAction Отправлено: Dendy от Декабрь 19, 2006, 19:03 А если ловить в QAction::toggled( bool ), отсьІлать запрос и ставить значение обратно?
Название: Вопрос по QAction Отправлено: mindz_eye от Декабрь 20, 2006, 20:25 Можно, но предыдущее значение почему-то не восстанавливается. В слоте triggered делаю
blockSignals( true ); toggle(); blockSignals( false ); После этого все действия оказываются чистыми. Название: Вопрос по QAction Отправлено: bigirbis от Декабрь 20, 2006, 21:18 Думаю, по triggered() надо поток стартовать, отсылать запрос на сервер и в нем же ожидать ответа от сервера.
|