在Symbian應(yīng)用程序Widget開發(fā)使用Qt加載和縮放圖片
本文和大家重點(diǎn)學(xué)習(xí)一下如何在Symbian應(yīng)用程序Widget開發(fā)使用Qt加載和縮放圖片,相信通過本文的簡單介紹你對Widget開發(fā)的概念一定會有新的認(rèn)識。
如何在Symbian應(yīng)用程序Widget開發(fā)使用Qt加載和縮放圖片
簡介
下列代碼片段演示了Widget開發(fā)中如何加載圖片,縮放圖片以及如何將圖片設(shè)置為程序或Widget的背景圖。這里的APIQPixmap()將可以傳入文件名然后加載圖片,APIQPixmap::scaled()將返回給定高寬縮放后的圖片拷貝,QPalette::setBrush()將Bursh顏色, QWidget::setPalette()為Widget設(shè)置給定的調(diào)色板。
下列代碼自簽名即可執(zhí)行,并無用到需要額外能力的API
Preconditions·
下載并安裝Qt for Symbian - Installation packages最新版
需要的頭文件
- #include <QPalette>
- #include <QDesktopWidget>
Source
- void SetBackground::SetBackgroundImage(){ //Using QPalette you can set background image as follows. QPalette p = palette();
- //Load image to QPixmap, Give full path of image QPixmap pixmap1("c://01.JPG");
- //For emulator C: is ..\epoc32\winscw\c so image must be at that location //resize image if it is larger than screen size.
- QDesktopWidget* desktopWidget = QApplication::desktop(); QRect rect = desktopWidget->availableGeometry();
- QSize size(rect.width() , rect.height()); //resize as per your requirement.. QPixmap pixmap(pixmap1.scaled(size));
- p.setBrush(QPalette::Background, pixmap); setPalette(p);}
后記上述代碼在一個(gè)程序中顯示了背景圖
示例代碼·
Code Example將背景圖設(shè)置為上述圖片,已經(jīng)在Nokia 5800 XpressMusic手機(jī)測試
【編輯推薦】
- AndroidWidget開發(fā)系列解讀
- AndroidWidget開發(fā)詳解
- 全面認(rèn)識WebWidget開發(fā)
- DashBoard的Widget開發(fā)指南
- 解析AndroidWidget開發(fā)中如何構(gòu)建Activity類