2010-08-21 7 views
2

J'ai une boîte à propos de laquelle j'essaie d'afficher une icône à l'intérieur.Comment faire pour afficher l'icône dans QMessageBox?

Voici mon code:

QMessageBox about_box(this); 

about_box.setText("..."); 
about_box.setIconPixmap(QPixmap("qrc:/images/logo.png")); 
about_box.setParent(this); 

about_box.exec(); 

Voici mon fichier de ressources:

<RCC> 
    <qresource prefix="/images"> 
     <file>logo.png</file> 
    </qresource> 
</RCC> 

Répondre

8

Vous n'avez pas besoin du préfixe qrc:

about_box.setIconPixmap(QPixmap(":/images/logo.png")); 
+0

Parfait! J'avais l'habitude de coller 'qrc: /' devant les images dans les fichiers de ressources grâce à QWebView :) –

0

Vous aurez besoin this function

EDIT: Je ne vois pas que l'OP avait déjà utilisé ceci. Etes-vous sûr de lancer qmake (et donc rcc) lors de la compilation?

+0

En fait, il est déjà en train de faire que via 'setIconPixmap'. Cette fonction est un setter à la propriété 'iconPixmap'. –