Qt 3 中 Linux 上的可用屏幕尺寸


QDesktopWidget * screen = QApplication::desktop();
QRect size = screen->availableGeometry(this);

文件说,

可用的内容

将根据平台决定可用的内容(例如,不包括Mac OS X上的Dock和Menubar或Windows上的任务栏)的screenGeometry()的子矩形。

我想知道的是如何在 Linux 上获得可用的屏幕几何形状(没有面板)?我在 Linux 上尝试了上面的代码,但它返回物理屏幕尺寸。

这个问题意味着调用QApplication::desktop()->size()将为您提供没有面板的 Linux 桌面大小。

// called from inside the MainWindow constructor
QDesktopWidget* dt(QApplication::desktop());
this->resize(dt->size()); 

此代码正确调整主窗口的大小,以填充 Qt 4.8 上 Ubuntu 10.04 上顶部和底部栏之间的空间。我在Qt3和Qt 4.8之间的文档中看不到任何差异,这表明这些功能的行为已经改变。

在大多数情况下,availableGeometry()有效。我正在使用虚拟屏幕。有时它无法正常工作。

相关内容

  • 没有找到相关文章

最新更新