Qt 窗體使用 label 標簽插入靜態圖片


最近在做畢業設計,上位機軟件用的Qt,界面當中需要加入學校校徽,結果百度了n多種方法,有用QPixmap的:

1     QPixmap myPix("./school.jpg");
2     ui->label_8->setPixmap(myPix);
3     ui->label_8->setScaledContents(true);
4     ui->label_8->show();

 有在Qt Creator使用label的屬性窗口進行pixmap設置的,也有用下面方法的:

1 label->setStyleSheet("background-image:url(圖片路徑)");

試了之后都不行,后來沒辦法采用播放 gif 格式動態圖片的方法,勉勉強強插入了靜態圖片:

1     QMovie *myMovie = new QMovie(".\school.jpg");
2     ui->label_8->setMovie(myMovie);
3     ui->label_8->setScaledContents(true);
4     myMovie->start();

本以為這么糊弄糊弄插進去能看就行了,結果將源碼拷貝到另一台電腦,又播放不出來了,這真蛋疼。。。於是又開始折騰,回想起當時在MFC中插入圖片的方法,感覺Qt應該也可以試試看,沒想到居然成功了。方法如下:
1.新建一個空的Qt圖形界面工程,對話框或者是主窗口都行。

2.進到ui文件,拖一個label控件進去,然后點擊file -> new file or projects選擇如下:

      

  保存路徑為本工程,名稱隨便寫,我這里寫了resources,然后下一步。

3.在工程管理窗口,會出現建立的Resources文件夾,也會默認進入添加資源窗口,看圖:

       

  然后單擊Add,選擇Add Prefix,看圖:

      

  可以吧Prefix后面的/new/prefix1改名,懶的話就不用改了,我比較懶,這里就不改了。然后再點擊Add,這時候多了個Add Files,這里說下,最好把圖片文件放到本工程下面,為了省事、方便嘛,你看,只要一點Add Files,就立馬可以選擇圖片了,不用費事的另找,對吧,然后添加即可,看圖:

      

   看圖中就多了這么張圖片,這時候最好點ctrl+s保存下,然后回到ui界面,找到label屬性窗口,看圖:

      

    從pixmap的右面小三角符號里選擇choose resource,這時候會發現啥也沒有。。。

      

    但東西我們確實加進去了,不信看工程管理目錄。這里我退出選擇資源窗口,然后編譯下工程。然后再進來選擇資源,就會發現確實進來了:

      

  選擇上圖片,點擊Ok即可發現ui界面當中的label有圖了,這時候的圖的比例肯定不勻稱,需要選中label屬性當中pixmap下面的那個scaledcontents框,就可以發現圖在ui界面被縮放了。。。

4.ctrl+R,就可以發現運行之后的窗體確實加入了圖片:

    


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM