c++ - Qt 屏幕分辨率启动画面

标签 c++ qt splash-screen screen-resolution qpixmap

我有一个用 splash.showFullScreen() 显示的初始屏幕图像,但它不会根据屏幕分辨率调整大小,因此它要么平铺显示,要么变大,具体取决于显示器。我已经尝试了我能想到的一切,但没有任何效果。这听起来像是一个愚蠢的问题,它可能是但我找不到答案所以如果有任何可以帮助我解决这个问题?如果它有所不同,我使用名为 pixmap 的 QPixmap 作为初始图像。顺便说一下,我希望将图像拉伸(stretch)到屏幕分辨率。

最佳答案

您应该使用 QPixmap::scaled() 将像素图缩放到屏幕大小.您可以通过调用 QDesktopWidget::screenGeometry() 获取屏幕分辨率。 .桌面小部件可以通过QApplication::desktop()获取。 .

你可以尝试这样的事情:

QDesktopWidget* desktopWidget = qApp->desktop();
QRect screenGeometry = desktopWidget->screenGeometry();
int screenWidth = screenGeometry.width();
int screenHeight = screenGeometry.height();
QPixmap pixmapForSplash = yourPixmap.scaled(screenWidth, screenHeight);
QSplashScreen splashScreen(pixmapForSplash);

(对不起,我无法检查这个,因为我在这台电脑上没有开发环境......我希望它是正确的。)

关于c++ - Qt 屏幕分辨率启动画面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8192489/

相关文章:

c++ - 基于 c++ 范围的 std::vector 迭代的顺序

c++ - 谁能解释一下我对欧拉项目 15 的动态规划方法有什么问题?

c++ - QT Creator QlineEdit

python - ScrapyJs(scrapy+splash)无法加载脚本,但splash服务器运行良好

c++ - 当用户输入错误的数据类型时从单独的文件循环调用函数

android - Qt Ministro错误

multithreading - 我可以在非 GUI 线程上创建小部件,然后发送到 GUI 吗?

ios - 仅适用于 iOS 8 的 iPhone 中不会出现启动画面

php - 使用 PHP(而非 JS)检查 cookie 以用于初始页面重定向

c++ - 在 Linux Ubuntu 中使用 C++ 过滤以太网数据包