Ich habe Probleme, das Symbol einer QAction anzuzeigen, die aus dem aktuellen Icon-Thema ausgewählt wurde. Ich habe das UI mit Qt Designer gemacht und es mit pyuic4 sample.ui > sample.py
exportiert. das Symbol aus dem Thema mit self.actionSample.setIcon(QtGui.QIcon.fromTheme(_fromUtf8("document-open")))
Nach der Einstellung, erhalte ich den folgenden Quellcode:QIcon.fromTheme zeigt kein Symbol in PyQt
from PyQt4 import QtCore, QtGui
import sys
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
_fromUtf8 = lambda s: s
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName(_fromUtf8("MainWindow"))
MainWindow.resize(800, 600)
self.centralwidget = QtGui.QWidget(MainWindow)
self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
MainWindow.setCentralWidget(self.centralwidget)
self.statusbar = QtGui.QStatusBar(MainWindow)
self.statusbar.setObjectName(_fromUtf8("statusbar"))
MainWindow.setStatusBar(self.statusbar)
self.toolBar = QtGui.QToolBar(MainWindow)
self.toolBar.setObjectName(_fromUtf8("toolBar"))
MainWindow.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
self.actionSample = QtGui.QAction(MainWindow)
self.actionSample.setObjectName(_fromUtf8("actionSample"))
self.actionSample.setIcon(QtGui.QIcon.fromTheme(_fromUtf8("document-open")))
self.toolBar.addAction(self.actionSample)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
if __name__ == "__main__":
app = QtGui.QApplication(sys.argv)
window = QtGui.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(window)
window.show()
app.exec_()
Wenn ich es ausführen, wird die Symbolleiste auf das Symbol nicht angezeigt werden ‚Dokument zu öffnen.‘ Ist es ein Fehler oder mache ich etwas falsch?
Dank
Welche Plattform sind Sie und welche Version von Qt verwenden Sie? Haben Sie das Symbol in Designer festgelegt oder manuell hinzugefügt? – ekhumoro
@ekhumoro Ich arbeite mit: Gnu/Linux 3.2.0-2-686 - Debian Testing/ Python 2.7.3rc2/ python-qt4 4.9.3-4/ ich manuell das Symbol einrichten nach dem Generieren der ' .py' Datei. Aber wenn ich es mit qt-Designer erzeuge, ist es dasselbe. – Hypergraphe
Das Dialogfeld "Neue Aktion" im Aktionseditor sollte das Symbol neben der Eigenschaft "Symboldesign" anzeigen, sofern es verfügbar ist. – ekhumoro