Как я могу сделать диалоговое окно Qt всегда сверху на моем уровне приложения?
Я хочу сделать диалоговое окно всегда спереди, но всегда помнить спереди на уровне моего приложения, даже если я нажимаю на пустое место, я хочу, чтобы оно оставалось только в передней части моего приложения.
Я пытался использовать setWindowFlags(Qt::WindowStaysOnTopHint)
, но это делает диалоговое окно всегда наверху на уровне рабочего стола, но я хочу, чтобы оно было наверху только на уровне моего приложения.
Как я могу это сделать?
Вы можете достичь этого, предоставив родителям диалоги. Дочерний диалог всегда остается поверх родительского окна.
Если вы не можете отправить parent
в ваше диалоговое окно (на основе условного кода) Как и я, используйте флаги.
Dialog_dlg::Dialog_dlg(QWidget *parent)
: QDialog(parent), ui(new Ui::Dialog_dlg)
{
ui->setupUi(this);
setFixedSize(width(), height()); //for no maximaize
setWindowFlag(Qt::WindowStaysOnTopHint);
}
Я использовал это и хорошо для меня. Показать другие флаги, проверить их и выбрать.