Tengo la siguiente situación: Necesito crear un control de árbol personalizado, cuyas casillas de verificación también se personalizan. He hecho fácilmente la mayoría de las personalizaciones para el control de árbol mediante el uso de hojas de estilo; He tenido éxito agregando casillas de verificación a los artículos de QTreeView, pero estoy teniendo grandes problemas con la personalización de ellos. Necesito mostrar una imagen personalizada para el estado comprobado y otra para el estado no verificado.Personalizar las casillas de verificación de los elementos de un QTreeView
El lugar donde llegué a la conclusión de que esto se puede hacer es en mi subclase de QStyledItemDelegate, en el evento paint (es decir, CheckBoxItemDelegate :: paint). Lo que necesito es mostrar el texto, el ícono y la casilla de verificación para el ítem. Pero los problemas son:
- No puedo obtener el estilo del elemento (que configuré usando la hoja de estilo); de lo contrario, mi texto puede dibujarse con el color incorrecto;
- No conozco las rectas de cada subelemento (la casilla de verificación, el icono, el texto);
- No sé cómo obtener el ícono de un elemento (dado su QModelIndex) para dibujarlo.
P.S. Había subclasificado el QTreeView (obviamente) y, como estoy trabajando con QFileSystemModel, también he subclasificado para agregarle la funcionalidad de casilla de verificación.
¿Alguien puede ayudarme, por favor? ¿QStyledItemDelegate :: pintar el lugar adecuado para cambiar las imágenes de la casilla de verificación de los elementos del árbol? En caso afirmativo, ¿podría darme un pequeño ejemplo o algo así, cómo puedo hacer eso?
Eso es todo! ¡Muchas gracias! – Feoggou