Russian Qt Forum

Qt => Общие вопросы => Тема начата: Stanley от Апрель 14, 2007, 13:27



Название: Что за Focus?
Отправлено: Stanley от Апрель 14, 2007, 13:27
Имею qt 3.3.4 + vc 6.0 + winXP.
Создаю свой виджет, наследуя прямо от QWidget. Указываю флаг WNoAutoErase.
Пишу paintEvent c двойной буферизацией.
В процессе работы создается диалоговое окно над моим виджетом.
Теперь начинается полтергейст: когда это самое диалоговое окно закрывается, виджет вдруг моргает всей своей областью, на долю секунды показывая свой фон.
Все указывает на то, что система сначала заливает фон, а потом вызывает мой paintEvent.

После закомментирования в конструкторе строчки setFocusPolicy( StrongFocus ) все заработало как надо, проблема снята.

Но где смысл? Каким боком focusPolicy относится к перерисовке виджета?