簡體   English   中英

Qt中的資源問題

[英]Problems with resources in Qt

我創建了一個“ qrc”資源文件

<RCC>
<qresource prefix="/pictures">
    <file>cards/2_of_clubs.png</file>
    <file>cards/2_of_diamonds.png</file>
    <file>cards/2_of_hearts.png</file>
    <file>cards/2_of_spades.png</file>
</qresource>
</RCC>

這些文件都是一張稱為“卡片”的地圖中的所有圖片。 我他們創建了一個imageObject,並嘗試從資源中加載圖片之一,但不加載。 (如果我寫了它的直接路徑就可以了)

QImage imageObject;
imageObject.load(":/pictures/cards/2_of_spades.png");
ui->label->setPixmap(QPixmap::fromImage(imageObject));

我顯然做錯了。 請幫忙 :)

您必須使用qrc作為Qt中任何基於資源的路徑的前綴:

imageObject.load("qrc:/pictures/cards/2_of_spades.png");

我沒有發現您的代碼或qrc文件有任何問題。 因此,我想也許您的配置未設置為處理文件。

創建qrc文件后,必須確保在文件上運行了“ rcc.exe”。 這將生成一個qrc_yourqrcfile.cpp文件,該文件必須包含在您的項目中。

如果您使用的是Visual Studio,並且具有Qt Visual Studios插件,則在將qrc文件添加到項目時,應該為您全部處理。 我說“應該”,因為有時效果不佳。 如果您使用的是VS和插件,請嘗試從項目中刪除qrc文件並重新添加。

如果您使用的是QMake,則pri文件應包含“ RESOURCES”部分,您需要在其中列出類似以下內容的qrc文件:

資源+ = yourqrcfile.qrc

然后QMake將自動處理所有rcc。

希望對您有所幫助。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM