Платформа - Windows 7,8,10
Я создал QApplication из QMainWindow. Я хочу, чтобы он всегда оставался поверх всех других окон.
Для этого я использовал флаги Qt ( Qt::WindowStaysOnTopHint ). Но этот флаг Qt не работает. Приложение представляет собой безрамочное приложение.
Пожалуйста, найдите ниже код конструктора моего приложения Qt.
myApp::myApp(QWidget *parent)
: QMainWindow(parent)
{
setWindowFlags(Qt::Widget | Qt::FramelessWindowHint);
setWindowFlags(this->windowFlags() | Qt::CustomizeWindowHint | Qt::WindowStaysOnTopHint );
ui.setupUi(this);
}
Как я могу заставить этот флаг работать?
Я пробовал все варианты, предложенные несколькими членами сообщества. Мой текущий код выглядит следующим образом
Qt::WindowFlags flags = this->windowFlags();
this->setWindowFlags(flags | Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
ui.setupUi(this);
Странный факт, что это никогда не работает на моей машине. Когда я создаю установщик или копирую необходимые файлы и запускаю их на разных машинах (Windows 7, 8, 10), я получаю свое приложение поверх всех других окон. Примечание. Я использую ОС Visual Studio Community Edition 2015 — Windows 7 Professional с пакетом обновления 1.