Changement de QPushButton de Couleur lorsqu'il est Pressé
Est-il un moyen de changer la couleur de fond d'un QPushButton qui est appuyé par la modification de son QPalette objet? Je me rends compte qu'il peut être fait avec des feuilles de style, mais comme un moyen de le faire en modifiant la QPalette. Quelque chose de similaire à la façon dont on change la couleur de fond du bouton lorsqu'il n'est pas pressé:
QPushButton myButton;
QPalette p(myButton.palette());
p.setColor(QPalette::Button, QColor("#ffffff"));
myButton.setPalette(p);
Vous devez vous connecter pour publier un commentaire.
Se connecter à QPushButton de pressé() de signal et de la mise à jour de la palette avec la couleur de votre choix, puis vous connecter à publié() signal et de revenir la couleur à l'ancienne couleur. Cela devrait le faire.
Vous pouvez exécuter mise à jour() après les paramètres les couleurs ou dans les cas extrêmes repaint().
Il suffit d'ajouter une feuille de style à la qbushbutton lui-même ou à son parent qwidget:
Ceci permettra de définir la couleur d'arrière-plan rouge lorsque le QPushButton est cochée.
Connecter le bouton de pressé signal et de l'ensemble de la palette sur la fente. Vous pouvez avoir à faire appel
repaint()
pour forcer une mise à jour immédiate.vous pouvez définir la feuille de style pour le bouton quand il est pressé.. voici l'Exemple raconte comment définir la feuille de style de bouton.. mais dans votre cas, u besoin d'avoir deux différentes feuilles de style, un bouton est enfoncé, et de même lorsqu'il est publié, vous devez réinitialiser avec quelques autres de la feuille de style.