QML Image得到的圖片資源路徑的詳細信息


最近又開始了Qt5。在學習QML當地的資源總是越來越留念類似 “ QML Image: Cannot open: qrc:///images/Blue hills.jpg ”的錯誤,即無法正常加載本地的圖片資源,經過一般努力,最終搞定拉!

特此記錄下來。方便自己和各位同仁查詢!

參考:http://mobile.51cto.com/symbian-261878.htm

 

一開始遇到問題的時候在網上搜索了些久都沒成功解決這個問題,只是倒是有些啟示。比方在上面網址看到的資料中就多少有些體會。

在這里先貼出本人的小樣例:

Rectangle {
    id: rec
    width: 800
    height: 600
    opacity: 1
 
        
    Image {
        id: image1
        source: "images/Blue hills.jpg"
 
        
        Image {
            id: image2
            width: 256
            height: 256
            source: "images/cute_colorful_qq_01.png"
        }
    }
}
 
        
 
        

若正常顯示的話,會出現下面的效果:

可是本人一開始測試的時候。程序執行的效果都是一片空白,並且還總是出現 “ QML Image: Cannot open: qrc:///images/Blue hills.jpg ” 的錯誤,盡管程序能夠正常執行!

 

一開始本人還以為是路徑的問題。依據網上的非常多資料頁時這么說的,后來ijiu不斷的改動路徑參數,唉!

無論俺怎么改動都不能把圖片顯示出來。后來懷疑是Qt的Bug。可是本人有測試了一下載入遠端的圖片,即網絡上的圖片。如一下代碼:

    width: 800
    height: 600
    opacity: 1
 
        
    Image {
        id: image1
        source: "http://192.168.13.219/images/Blue hills.jpg"
    }
}
 
        
 
        

以上 source 后面的網址是本人在自己的電腦上面搭載的server的路徑下的圖片,讀者也能夠自己鏈接到網絡上的其它圖片鏈接!這樣都能夠正常顯示呀。例如以下圖:

 

由此看來不是Qt的問題,那就是俺自個的問題咯,再繼續摸索!

這里注意一下,以下是俺的project路徑,圖片資源也在這個路徑以下:

 

后來俺猜想,會不會是“ qml.qrc ”這個資源文件出問題了呢,把它打開一看:內容例如以下:

<RCC>
    <qresource prefix="/">
        <file>main.qml</file>
    </qresource>
</RCC>

嗯。好像真的有點問題,由於依照常規,*.qrc這個資源文件是有記錄圖片資源的路徑信息的。但這里沒有,於是本人自己手動改動為下面這樣:

<RCC>
    <qresource prefix="/">
        <file>main.qml</file>
        <file>images/Blue hills.jpg</file>
        <file>images/cute_colorful_qq_01.png</file>
        <file>images/Sunset.jpg</file>
    </qresource>
</RCC>


然后又一次編譯執行,這是令人激動的時刻到來啦,最終成功顯示了我們的圖片啦!哈哈!

 

這里提醒一下,我們事實上也能夠不用自己手動更改 *.qrc 文件,直接在 QtCreator 的項目project里面把圖片資源加載進去即可拉。例如以下圖所看到的:

 

大家看到了嗎,就是上面紅色方框圈出來的幾張圖片,須要自己手動把它們加入到project中去。這樣就會自己主動改動 “*.qrc”文件。一開始是沒有的哦!問題就出如今這里!

 

井。關於這件事的第一!

版權聲明:本文博客原創文章,博客,未經同意,不得轉載。


免責聲明!

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



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