LINUX.ORG.RU

Отследить активацию окна


0

0

Люди, я наверное тупой ((( Пытаюсь освоить QT Creator 1.1.0 /Qt 4.5.1

Задача: когда окно приложения становится активным, выполнить некое действие. QShowEvent работает только на первую прорисовку окна, QPaintEvent не из той оперы. Что мне ловить, я так и не могу понять. Помогите старому пасквилянту, пытающемуся перебраться на Си, плиз.

Поиском ничего не нашёл.

★★★★★

Поправлюсь: QShowEvent работает только на первую прорисовку окна или после сворачивания/разворачивания. А нужно чтобы когда окну даётся фокус, выполнялась функция. Даже если оно не было свёрнуто. QFocusEvent не дал результата - может я не понял, с чем его готовить.

Steplton ★★★★★
() автор топика

В MainWindow добавь  

bool eventFilter( QObject* o, QEvent* e ) {
	if( e->type() == QEvent::ApplicationActivate ) {
		//
	}

	return QMainWindow::eventFilter( o, e );
}

И в его конструктор куда-нибудь 

qApp->installEventFilter( this );

summatus
()
Ответ на: комментарий от summatus

Огромное спасибо!!!
Только вместо bool eventFilter (...
пришлось заменить: bool myCoolFirstApp::eventFilter (...

Steplton ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.