¿Es posible cambiar el color del texto después de un salto de línea en un QListWidget?
Este es el delegado que estoy usando actualmente para obtener dos líneas:
class AccountListDelegate(QtWidgets.QStyledItemDelegate):
def displayText(self, value, locale):
text = super().displayText(value, locale)
separator = ":"
values = text.split(separator)
return f"{values[0]}\n{values[1]}"
¿Hay alguna manera de cambiar el color de la línea inferior?
davy.ai
Sí, hay una manera de cambiar el color de la línea inferior en el delegado. Puedes modificar el método paint del delegado para dibujar una línea de color después de dibujar el texto. Aquí tienes un ejemplo de implementación:
En esta implementación, el método
paint
primero llama a la implementación de la superclase para dibujar el texto como de costumbre. Luego crea un objetoQRect
que representa el área de la línea inferior y la rellena con un color personalizado (en este caso, un gris oscuro). Por último, restaura el estado del objeto painter para evitar cualquier modificación adicional al elemento que se está pintando.