簡體   English   中英

Qt屏幕分辨率飛濺屏幕

[英]Qt Screen Resolution Splash Screen

我有一個啟動畫面圖像,我用splash.showFullScreen()顯示,但它不會調整大小到屏幕分辨率,所以它要么是平鋪,要么是根據顯示器大。 我已經嘗試了所有我能想到但沒有任何作用的東西。 這可能聽起來像一個愚蠢的問題,它可能是但我找不到答案,所以如果有任何可以幫我這個? 如果它有所不同,我使用名為pixmap的QPixmap作為啟動圖像。 順便說一句,我想將圖像拉伸到屏幕分辨率。

您應該使用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);

(對不起,我無法檢查這個,因為我在這台電腦上沒有開發環境......我希望它是正確的。)

我認為你應該根據可以使用QDesktopWidget::availableGeometry方法獲得的可用桌面幾何體的大小為你的啟動畫面調用resize()方法。 QApplication::desktop()函數用於獲取QDesktopWidget的實例。 slpashScreen.resize(QApplication::desktop()->avaiableGeometry().size());

如果使用QLabel顯示圖像,請確保標簽位於布局中,使其填充整個父窗口小部件並設置標簽以使用setScaledContents(true)縮放其內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM