2017-09-05 5 views
0

Je veux changer la couleur de la police d'un texte dans une interface utilisateur, mais il semble qu'il n'y ait rien dans the text command doc pour ce faire. Il est possible de changer la couleur d'arrière-plan, mais rien sur la police elle-même.Comment changer la couleur de police du texte de l'interface utilisateur Maya?

J'ai cherché sur Internet et trouvé ce code pour changer la couleur d'un bouton en utilisant PyQt (source).

import maya.OpenMayaUI as omUI 
from PyQt4 import QtGui 
import sip 
bt = sip.wrapinstance(long(omUI.MQtUtil.findControl(_the_button_name_)), QtGui.QPushButton) 
bt.setStyleSheet('QPushButton {color: yellow}') 

Donc, j'ai deux questions:

Tout d'abord, que dois-je utiliser, au lieu de QPushButton, pour modifier la couleur d'un contrôle de texte, et deux, la couleur du bouton ici est changé pour 'yellow' et Je voudrais changer à une valeur de couleur personnalisée, est-il un moyen de le faire aussi?

Merci d'avance!

Répondre

1

lorsque vous utilisez la fonction setStyleSheet vous modifiez les propriétés du style avec une syntaxe similaire à CSS, donc si nous voulons utiliser une couleur spécifique, nous pouvons transmettre les valeurs comme rgb ou code hexadécimal comme indiqué ci-dessous:

pb.setStyleSheet('QPushButton {color: rgb(1, 1, 240)}') 
pb.setStyleSheet('QPushButton {color: #0101F0}') 

vous pouvez également appliquer à tout un widget sans vous dire de définir le widget comme indiqué ci-dessous:

some_widget.setStyleSheet('color: #0101F0') 

texte utiliser les éléments suivants:

lb = sip.wrapinstance(long(omUI.MQtUtil.findControl(_the_label_n‌​ame_)), QtGui.QLabel) 
lb.setStyleSheet('color: #0101F0') 
+0

Merci, cette réponse à la deuxième partie de ma question :) Savez-vous comment l'appliquer à un contrôle de texte au lieu d'un contrôle de bouton? – UKDP

+0

@UKDP Vous avez mis à jour ma réponse, mais je suis un peu confus: qu'est-ce que vous appelez le contrôle de texte, à un QLabel; QLineEdit, QTextEdit? – eyllanesc

+0

C'est la chose ... Je ne sais pas quel widget Maya utilise pour afficher le texte dans les interfaces utilisateur, et je ne sais même pas s'il existe un moyen d'obtenir cette information autrement qu'en testant ... – UKDP