【发布时间】:2019-08-02 18:10:59
【问题描述】:
当任务栏(位于屏幕底部)不可见时,我的应用程序处于全屏模式。在此应用程序中,可以显示一个对话框,但如果我将其最大化(使用最大化按钮或以编程方式),对话框将不会全屏显示。它看起来就像任务栏在那里。
那么是否可以将对话框最大化到全屏?但有必要在其标题栏上保留用于最小化、最大化和关闭的按钮。
编辑:
我没有添加任何代码,因为我发现没有任何用处。但是好的,这是不起作用的代码:
// main.cpp
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.showFullScreen();
return a.exec();
}
// mainwindow.cpp
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
QDialog *dialog = new QDialog(this);
// only for better visibility of the dialog
dialog->setStyleSheet("background: green");
// This does not work because the dialog is displayed without a titlebar
// and buttons for minimizing, maximizing and closing.
// dialog->setWindowState(Qt::WindowFullScreen);
// dialog->show();
// or (it is the same)
// dialog->showFullScreen();
// This does not display the dialog on the full screen.
dialog->showMaximized();
}
// mainwindow.h
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow() {}
};
【问题讨论】:
-
如何最大化它?通过Minimal, Reproducible Example 提供您的问题
-
你用过
QWidget::showFullScreen()吗?显示代码!