C++ Qt 5.3全屏问题
我有一个运行在Ubuntu12.04服务器和KDE plasma桌面上的Qt应用程序。如果我使用Qt4.8进行编译,那么全屏工作就如预期的那样。使用Qt5.3,窗口将变得比可用分辨率更大。如果我使用下面的代码设置分辨率,它就会工作C++ Qt 5.3全屏问题,c++,qt,qt5.3,C++,Qt,Qt5.3,我有一个运行在Ubuntu12.04服务器和KDE plasma桌面上的Qt应用程序。如果我使用Qt4.8进行编译,那么全屏工作就如预期的那样。使用Qt5.3,窗口将变得比可用分辨率更大。如果我使用下面的代码设置分辨率,它就会工作 QSize sz(QApplication::desktop()->size()); main_window->setFixedSize(sz.width() + 1, sz.height() + 1); main_window->showFullS
QSize sz(QApplication::desktop()->size());
main_window->setFixedSize(sz.width() + 1, sz.height() + 1);
main_window->showFullScreen();
这是解决这个问题的正确方法吗
提前感谢。Qt在应用程序大小调整方面非常灵活,并为您提供了大量信息(和选项) 有关应用程序的问题,您可以使用
QDesktopWidget
QDesktopWidget * screen = QApplication::desktop();
screen->availableGeometry();
如有关可用计量学的文件中所述:
返回带有索引屏幕的屏幕的可用几何图形。什么
可用的将是screenGeometry()的子矩形,具体取决于
平台决定是否可用(例如,不包括停靠和菜单
Mac OS X上的任务栏或Windows上的任务栏)。默认屏幕为
当屏幕为-1时使用
阅读QDesktopWidget
文档中的“主屏幕的使用”一节,了解有关“默认屏幕”和多屏幕的一般处理的详细信息。使用这些方法,即使有多个可用屏幕,您也可以完全控制应用程序的布局方式
有关QGUI应用程序的问题,您可以使用QScreen
:
QScreen * screen = QGuiApplication::primaryScreen();
screen->availableGeometry();
最后,在QML中,可以(并且建议)使用Screen
对象,该对象提供Screen.desktopAvailableWidth
和Screen.desktopAvailableHeight
,以确保在不同版本的Android/iOS中正确调整大小