2013-05-02 2 views
1

Quand j'ai ce code et copier manuellement i.png à destination de fichier binairespécification Chemin du fichier dans .qrc et accéder aux fichiers à partir du code C++

scene = new QGraphicsScene(this); 
QPixmap pixm(qApp->applicationDirPath() + "/i.png"); 
scene->addPixmap(pixm); 
ui->graphicsView->setScene(scene); 

image montre exactement comme je veux. Maintenant, j'ai créé le fichier de ressources images.qrc. Path est défini sur/et contient un seul fichier i.png. Mais quand je change le code à:

scene = new QGraphicsScene(this); 
QPixmap pixm(":/images/i.png"); 
scene->addPixmap(pixm); 
ui->graphicsView->setScene(scene); 

GraphicsView reste vide. Pourquoi?

Il est images.qrc

<RCC> 
    <qresource prefix="/"> 
     <file>i.png</file> 
    </qresource> 
</RCC> 
+0

Montrez-nous votre '.qrc 'fichier. – cmannett85

Répondre

4

":/images/i.png" suppose que le préfixe est images. utiliser plutôt

QPixmap pixm(":/i.png"); 
+0

LOL ça marche. C'était le premier thig que j'essayais ... J'ai eu le dossier avec le nom long ainsi c'était propablement typo. THX –

2

Afin de préciser l'emplacement: /images/i.png, j'attends le fichier de ressources à regarder de plus comme ceci: -

<RCC> 
<qresource prefix="/images"> 
    <file alias="i">images/i.png</file> 
</qresource> 
</RCC> 
Questions connexes