Como faço para determinar se o item é selecionado ou não na função paint () de QItemDelegate?
-
19-09-2019 - |
Pergunta
Estou fazendo uma tabela utilizando QItemDelegate. Eu uso o método paint (..) para desenhar itens delegados têm a mesma aparência quando eles saem do modo de edição, mas eu também preciso para desenhar os itens de forma diferente quando eles são selecionados ou não, e o método de pintura também é chamado durante esses eventos. A minha pergunta é como eu sei quando a desenhar o que?
obrigado.
Solução
O QItemDelegate.paint
método aceita um QStyleOptionViewItem
como um parâmetro, que é herdada de QStyleOption
. QStyleOption
tem uma variável membro chamado state
do tipo QStyle::State
. Um dos sinalizadores de bit possíveis para estado é QStyle::State_Selected
, que é o que você quer para testar.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow