2011-10-20 9 views
8

L'impostazione predefinita prevede che la riga selezionata sia colorata in grigio se QTableWidget non ha lo stato attivo e arancione se ha lo stato attivo. Vorrei, invece, rendere rossa la riga selezionata indipendentemente dal fatto che il widget abbia o meno il focus. Ho provato ad aggiungere questo per il foglio di stile:Modificare il colore di selezione di un QTableWidget

QTableWidget{ selection-background-color: red} 

Ho anche provato

QTableWidget:edit-focus{ selection-background-color: red} 

e

QTableWidget:focus{ selection-background-color: red} 

ma nessuno di loro sembrano girare qualsiasi cosa rossa, sembra ancora rimanere arancione se messo a fuoco e grigio se non. Quali proprietà devo impostare per rendere sempre la stessa riga selezionata dello stesso colore, indipendentemente dal fatto che abbia o meno lo stato attivo?

Grazie,

David

risposta

15

È quasi l'avevano. Tecnicamente, stai modificando il colore di selezione degli oggetti all'interno del tuo widget tabella, quindi:

QTableWidget::item{ selection-background-color: red} 

dovrebbe fare il trucco.

alternativa:

QTableWidget::item{ background-color: blue } 
QTableWidget::item:selected{ background-color: red } 
+1

Yep, che lo ha fatto, grazie! –

+0

Fa il trucco molto bene, ma non funziona quando impostiamo anche il "colore di sfondo" dell'oggetto. Devo commentare il colore di sfondo per far funzionare i colori di selezione. – zeFree

+0

Ho aggiunto una soluzione alternativa che dovrebbe funzionare per voi – Chris

Problemi correlati