QLabel圖片自適應


故事背景:由於要做終端定制的需求,在服務端上傳一張128像素的圖片,下發給客戶端,適配所有圖標(界面左上角、任務欄、快捷方式、托盤等),但是由於每個位置的圖標大小不一樣,代碼要根據本身控件的大小做一個適配,開始我們的探險之路。。。。。。

 

解決方案:主要解決界面左上角16像素的適配,這里我用了三種方案,供大家參考

     1、pTmpLogo->setStyleSheet("border-image:url(/home/xxx/Desktop/16-128-256/b128.png)");,這種方式圖片會失真,不能用,放棄

     2、這種連寫的方式也不生效,所以也給大家一個建議,以后遇到類似的操作,盡量分開寫,不要連着寫!!!!!!

pTmpLogo->setPixmap(QPixmap("/home/xupeidong/Desktop/16-128-256/b128.png").scaled(16,16));
pTmpLogo->setScaledContents(true);

          3、這是最合理的方式,希望大家借鑒

    QPixmap pix(CommonInterface::m_strIcoPath);
    pix.scaled(QSize(16,16), Qt::KeepAspectRatio);
    m_pLabelLogo->setPixmap(pix);
    m_pLabelLogo->setScaledContents(true);

 

如果大家有更好的方法或者其他類似的可以在評論區分享出來,一起學習一起進步,分享給更多的人。


免責聲明!

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



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