QT使用scrollarea顯示圖片,完美解決方案
需求:
在介面上點選“顯示圖片”按鈕,會呼叫scrollarea視窗顯示圖片,視窗大小能根據圖片大小自動調整,但是最大為1024*768,圖片過大就要有滾動條來顯示
IDE環境:
QT Creator ,linux ,ubuntu12.04
程式碼:
mainwindow中點選“顯示圖片”呼叫scrollarea視窗,下面的函式是被一個按鈕的槽函式呼叫的
void MainWindow::Show_Image_byname(char *filename)
{
if(!filename || !strlen(filename))
{
return;
}
char buf[128]= {0};
strcpy(buf,SAVE_IMAGE);
strcat(buf,filename);
ScrollArea *new_image = new ScrollArea();
new_image->set_image(buf);
new_image->setBackgroundRole(QPalette::Dark);
new_image->show();
return;
}
新增檔案scrollarea.ui檔案,畫出一個scrollarea
在生成的scrollarea.h中新增私有成員QLabel
private:
Ui::ScrollArea *ui;
QLabel * label;
在解構函式中新增記憶體釋放
ScrollArea::~ScrollArea()
{
delete ui;
if(label)
{
delete label;
}
}
在生成的scrollarea.cpp中新增圖片顯示實現函式
void ScrollArea::set_image(char *filename)
{
QImage *ppm = new QImage(filename);
label = new QLabel();
printf("ppm->width()=%d, ppm->height()=%d\n",ppm->width(), ppm->height()); //獲取圖片的寬度和高度
label->setPixmap(QPixmap::fromImage(*ppm));
this->setWidget(label);
/*設定視窗最大高度和寬度為1024*768*/
this->setMaximumHeight(768);
this->setMaximumWidth(1024);
this->resize(QSize( ppm->width()+5, ppm->height() +5));
return;
}
實現拉!!
相關文章
- win7圖片只顯示圖示不顯示預覽圖解決方案Win7圖解
- qt下使用qwebview開啟網頁不顯示JPEG圖片的解決辦法QTWebView網頁
- qt標題,解決title的png圖片scaled後顯示有明顯鋸齒QT
- 網頁圖片不能顯示 網頁圖片顯示不出來的解決辦法網頁
- QT中文顯示亂碼解決QT
- 新聞管理軟體的完美圖片解決方案 (轉)
- 完美解決IE中PNG格式透明背景圖片顯示異常的各種方法【Z】
- 成功解決github無法顯示圖片問題Github
- Picasa相簿圖片不顯示的解決辦法
- Prometheus告警帶圖完美解決方案Prometheus
- Overleaf中插入pdf圖片只顯示圖片路徑的解決方式
- 前端圖片解決方案前端
- VS+Qt+Halcon——顯示圖片,實現滑鼠縮放、移動圖片QT
- chrome瀏覽器不能顯示本地圖片辦法解決(圖片預覽)Chrome瀏覽器地圖
- 【轉】釋出的QT程式無法顯示圖示和圖片的問題QT
- qt 使用qmake pro檔案新增 ico圖示,程式執行時顯示圖示,exe也顯示圖示QT
- mac 文件顯示圖示和軟體圖示不一致 解決方案Mac
- img圖片無法顯示利用onerror事件顯示替代圖片Error事件
- IOS下圖片不能顯示問題的解決辦法iOS
- discuz7.2不能顯示驗證圖片的解決方法
- 解決WordPress文章上傳圖片使用中文名不顯示的問題
- 【菜鳥學安卓】- TextView 顯示Html 一 解決圖片顯示不了的小問題安卓TextViewHTML
- Win10 Xbox商店不顯示圖片怎麼辦 Win10 Xbox商店不顯示圖片解決教程Win10
- Win10淘寶網站圖片無法顯示如何解決_Win10淘寶網圖片不顯示的解決步驟Win10網站
- 【Android Fragment】友盟統計 Fragment 頁面顯示隱藏的完美解決方案AndroidFragment
- 用Qt5和OpenCV讀取顯示中文路徑的圖片QTOpenCV
- vmware不顯示usb圖示解決辦法
- navicat for mysql顯示中文亂碼解決方案MySql
- Android 圖片高斯模糊解決方案Android
- Golang pprof 結果使用 graphviz 圖片化顯示Golang
- Java——圖片滾動顯示Java
- iOS 大圖顯示解決辦法iOS
- 瀏覽器能正常訪問圖片,但是放到img src下就無法顯示的解決方案瀏覽器
- 解決單執行緒QT UI 載入進度條實時顯示方案記錄執行緒QTUI
- 解決Win7 軟體圖示不顯示--Win7圖示異常,快捷方式不顯示解決方法Win7
- opencv圖片上如何顯示兩個小圖片OpenCV
- QT5.9如何實現插入圖片與圖示QT
- win10瀏覽器看不了圖片不顯示怎麼解決Win10瀏覽器