2016-04-17 11 views
0

Ich versuche das Schaltflächensymbol bei bestimmten Aktionen zu ändern. (Clicked, Behinderte etc.)PyQt4: Ändern des Schaltflächensymbols bei Aktion

So wie ein Beispiel lässt einen Tastendruck nehmen, wenn ich einen Knopf haben:

btn = QtGui.QPushButton(" ", self) 
btn.resize(100, 100) 
btn.move(0, 0) 
btn.setIcon(QtGui.QIcon("")) 
btn.setIconSize(QtCore.QSize(100, 100)) 

Wie kann ich das entsprechende Symbol ändern, wenn darauf geklickt? Muss ich ein geklicktes Signal machen?

btn.clicked.connect(self.some_function_that_shows_new_icon)

Wenn ja, wie kann ich machen deaktiviert Signal oder eine andere Taste Zustand zur Verfügung?

Beispiel:

btn.disabled.connect(self.some_function_that_shows_new_icon)

(Signal, das erkennt, ob Tasten deaktiviert oder nicht, über nicht funktioniert)

+1

btn.clicked.connect (self.some_function_that_shows_new_icon) das stimmt. Und zweitens, Sie können grundsätzlich neu schreiben. Auch gibt es keine solche disabled.connect Sache – Taylan

+0

und gibt es sowas ähnliches ?, ich habe einmal qt Designer benutzt und diese Bedingungen auf Icons gesehen. – ShellRox

Antwort

1

QIcons mehrere Bilder für die verschiedenen Modi und Zustände haben können. Sie fügen mehrere QPixmap s zu demselben QIcon hinzu und spezifizieren den Modus und den Zustand für dieses Bild.

Es hängt davon ab, ob das Klicken auf die Schaltfläche den Status der Schaltfläche ändert (z. B. Ein- oder Ausschalten). Wenn Sie die Schaltfläche verwenden, um den Status von etwas anderem umzuschalten, wird dies nicht funktionieren.

Verwandte Themen