Tengo un QLabel
con una hoja de estilo Qt que establece un fondo oscuro:¿Cómo personalizo la apariencia de los enlaces en QLabels usando hojas de estilo?
QLabel {
background: black;
color: white;
}
Esto funciona bien hasta que añadir texto con un URL incorporado y establecer el Qt::TextFormat
-Qt::RichText
. El enlace se muestra como el azul oscuro predeterminado, que es difícil de leer en un fondo oscuro.
He intentado personalización a través de una hoja de estilo, tales como:
a { color: white; }
QLabel!visited { color: white; }
pero esto no tiene ningún efecto. Lo único que parece funcionar está cambiando de QPalette
la aplicación:
QPalette newPal(qApp->palette());
newPal.setColor(QPalette::Link, Qt::white);
newPal.setColor(QPalette::LinkVisited, Qt::white);
qApp->setPalette(newPal);
Sin embargo, esto requiere que el color que se hardcoded. ¿Hay alguna forma en que pueda establecer el color de una hoja de estilo en su lugar?
EDIT:
he descubierto un problema adicional con la personalización de la paleta. Si solo quiero modificar la paleta de mi widget (sustituyendo widget
por qApp
en el ejemplo anterior), esto no funciona. No quiero afectar a todos los demás QLabels
en la aplicación, así que ¿cómo limito los cambios de la paleta a este widget?
Creo que he llegado a las mismas conclusiones - ver mi otro comentario –
QLabel(). SetText (' something') – Asi