2013-02-17 5 views
0

Я пишу приложение Qt/embedded GUI. Но вызов exec() следует избегать, так как я не хочу оставлять ответственность обработки событий, только на QWS (Qt Windowing System). Для меня это будет выгодно, если можно вручную вызвать обработчик событий (например, processEvents) при необходимости?Ручная обработка событий в Qt/embedded (без использования QApplication: exec())

+1

Непонятно, в чем вопрос. Не могли бы вы привести пример того, что вы пытаетесь сделать, и где вы столкнулись с проблемой? –

+0

Цикл событий - это в основном сердце Qt. Почему вы хотите остановить его? Чего вы пытаетесь достичь? Если вы хотите отфильтровать события, такие как пользовательские события, есть разные способы сделать это. –

ответ

0

Похоже, это то, что вы хотите, от here:

Мы можем создать подкласс QApplication и переопределение уведомить().

Qt вызывает QApplication :: notify(), чтобы отправить событие. Reimplementing эта функция является единственным способом получить все события, перед любым событием фильтры получают возможность посмотреть на них. Фильтры событий обычно более полезны, так как может быть любое количество параллельных фильтров событий , но только одна функция notify().

Тогда я думаю, вы могли бы буфер событий, как они входят, и подкласс QApplication для создания пользовательского processEvents -кака функции, чтобы отправить их, когда вы хотите. Но, как другие отмечают, на самом деле не совсем понятно, почему вы хотите переопределить QWS.

Смежные вопросы