Bonjour à tous,
En voulant diffuser une application python + Qt avec cx_Freeze j'ai remarqué quelque chose de curieux. Les icônes définies à partir de fichiers SVG ne
s'affichent pas. Ce qui n'est pas le cas à partir d'un fichier PNG par exemple.
Depuis la ligne de commande python monexemple.py OK
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 import sys from PyQt4 import QtGui, QtCore class MonWidget(QtGui.QWidget): def __init__(self): super(MonWidget, self).__init__() self.but1 = QtGui.QPushButton( QtGui.QIcon(u'Flag_of_France.svg'), 'France.svg') self.but2 = QtGui.QPushButton( QtGui.QIcon(u'Flag_of_France.png'), 'France.png') lay = QtGui.QVBoxLayout() lay.addWidget(self.but1) lay.addWidget(self.but2) self.setLayout(lay) if __name__ == "__main__": app = QtGui.QApplication(sys.argv) wid = MonWidget() wid.show() sys.exit(app.exec_())
monexemple.exe ==> seule l'cône PNG est affichée
Où est le problème quand il suffit de convertir l'icône dans le format PNG, pourrait-on se demander.
Effectivement, c'est la solution que j'adopte. Mais j'aimerais assez connaître
l'explication de ce petit mystère.
Si quelqu'un la connaît, je suis preneur
Merci d'avance
Partager