Название: [Решено] Использование флага Qt::WindowStaysOnTopHint - требуется помощь Отправлено: astramax57 от Май 07, 2010, 08:00 Всем привет.
Есть задача - рисовать окно (наследник от QMainWindow) поверх остальных. Вроде бы ничего сложного. Много примеров, в т.ч. и на этом форуме, но простейший казалось бы код не работает: Код: manager w(a.arguments(), 0, Qt::WindowStaysOnTopHint); //это и есть окно Попробовал передавать флаг не через конструктор, а через w.setWindowFlags(w.windowFlags() | Qt::WindowStaysOnTopHint); - результат тот же. После дня мытарств, гугления и т.д. дошел до того, что флаг работает, если виджету указать родителя, причем этот родитель должен быть видимым: Код: QMainWindow window; Что это - кривые руки или баг? Поделитесь опытом. Версия Qt 4.6.2, система XP SP2 x32 Название: Re: Использование флага Qt::WindowStaysOnTopHint - требуется помощь Отправлено: dnc2rt от Май 07, 2010, 08:12 w.exec() - должно помочь, хотя если честно, то не знаю ,что ткое QMainDialog... в доках не нашел !
Название: Re: Использование флага Qt::WindowStaysOnTopHint - требуется помощь Отправлено: astramax57 от Май 07, 2010, 08:27 Я не стал приводить код целиком.
Код: //До создания окна создается приложение Прошу прощения, конечно же QMainWindow Название: Re: Использование флага Qt::WindowStaysOnTopHint - требуется помо Отправлено: dnc2rt от Май 07, 2010, 09:06 Два главных окна в проекте еще делать не доводилось, подсказать не могу :-X (использую 1 QMainWindow и N QDialog)
Название: Re: Использование флага Qt::WindowStaysOnTopHint - требуется помощь Отправлено: astramax57 от Май 07, 2010, 09:46 В качестве родителя указывается QWidget или наследник от него, так что нет проблем
Название: Re: Использование флага Qt::WindowStaysOnTopHint - требуется помощь Отправлено: _govorilka от Май 07, 2010, 19:53 Почитай про функцию...
void QWidget::setWindowModality ( Qt::WindowModality windowModality ) Из справки: Qt::ApplicationModal - The window is modal to the application and blocks input to all windows. Название: Re: Использование флага Qt::WindowStaysOnTopHint - требуется помощь Отправлено: astramax57 от Май 11, 2010, 09:41 Решено.
Меня изначально смущало то, что у всех флаг Qt::WindowStaysOnTopHint работает, а у меня нет. Оценил отличия моей машинки/оси и заметил програмку ultramon (кому интересно - ultramon.com). Выгрузил ее - и все заработало Всем спасибо за внимание |