Ci sono alcune cose sbagliate con la stylesheet syntax che si sta utilizzando.
In primo luogo, i selettori ID
(ad esempio #nom_plan_label
) devono fare riferimento al widget objectName
.
In secondo luogo, è necessario utilizzare i selettori solo quando un foglio di stile viene applicato a un widget antenato e si desidera che determinate regole di stile si sovrappongano a determinati widget discendenti. Se stai applicando il foglio di stile direttamente a un widget, il selettore (e le parentesi graffe) possono essere esclusi.
Dato questi due punti, il codice di esempio potrebbe diventare o:
nom_plan_label = QtGui.QLabel()
nom_plan_label.setText(nom_plan_vignette)
nom_plan_label.setObjectName('nom_plan_label')
nom_plan_label.setStyleSheet('QLabel#nom_plan_label {color: yellow}')
o, più semplicemente:
nom_plan_label = QtGui.QLabel()
nom_plan_label.setText(nom_plan_vignette)
nom_plan_label.setStyleSheet('color: yellow')
L'unico tempo possibile Credo che questa soluzione sarebbe causare un problema è come te detto, con i widget figlio. Quindi, se in qualche modo ha finito per aggiungere widget come figli dell'etichetta, avrebbero preso quel valore di colore. Se hai comunque utilizzato almeno il selettore QLabel, lo limiterebbe a QLabels da qui e in basso – jdi