comment utiliser les icônes par défaut avec qt

j'utilise seulement Qt (bien que PyQt) et je ne reçois pas d'icônes quand j'appelle par exemple QMessageBox.avertissement.)( Est-il possible d'utiliser la plate-forme d'icônes par défaut? Actuellement, j'utilise le constructeur QMessageBox plus complet et j'appelle setIconPixmap.

3
demandé sur gatoatigrado 2009-03-29 22:55:21

3 réponses

http://doc.qt.io/qt-5/qmessagebox.html

à partir du lien ci-dessus:

QMessageBox prend en charge quatre niveaux prédéfinis de gravité des messages, ou types de messages, qui ne diffèrent vraiment que par l'icône prédéfinie qu'ils affichent. Spécifiez l'un des quatre types de messages prédéfinis en définissant la propriété icon à l'une des icônes prédéfinies.

vous devez donc utiliser le constructeur QMessageBox:

QMessageBox ( Icon icon, const QString & title, const QString & text, StandardButtons buttons = NoButton, QWidget * parent = 0, Qt::WindowFlags f = Qt::Dialog | Qt::MSWindowsFixedSizeDialogHint )

et vous pouvez utiliser une de ces icônes:

http://doc.qt.io/qt-5/qmessagebox.html#Icon-enum

par exemple, vous pouvez passer ce paramètre pour icon: QMessageBox:: Warning

HTH! greets

4
répondu Giancarlo 2015-10-28 20:58:31

Je ne suis pas trop familier avec L'utilisation de Qt via Python, ou en utilisant QMessageBox. Cependant, un coup d'oeil rapide à la documentation implique qu'un avertissement utiliserait l'icône d'avertissement, qui devrait être les icônes par défaut de la plate-forme si elles n'ont pas été modifiées. Avez-vous essayé de regarder à travers le système de suivi des bogues de Qt pour voir si c'est un bogue? Ou soumettre une demande de bogue/fonctionnalité pour cela?

1
répondu Caleb Huitt - cjhuitt 2009-03-31 16:28:20

Je ne sais pas comment vous avez écrit votre usage de la boîte de message, mais voici comment je l'utilise:

from PyQt4 import QtGui
QtGui.QMessageBox.warning(parent, dialogTitle, dialogText)

si cela ne produit pas d'icône d'avertissement dans votre boîte de message, alors vous pouvez envisager de mettre à jour votre PyQt vers la dernière version, parce que j'ai connu de petits bogues comme celui-ci dans le passé avec quelques révisions PyQt.

1
répondu Chris Cameron 2009-04-22 13:50:00