Club Builder - Foros de discusión Club Builder
Foro de C++Builder en español
 
 FAQFAQ   BuscarBuscar   MiembrosMiembros   Grupos de UsuariosGrupos de Usuarios   RegistrarseRegistrarse 
 PerfilPerfil   Entra para ver tus mensajes privadosEntra para ver tus mensajes privados   EntrarEntrar 

Alternar color de filas en un TListView

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Consultas
Ver tema anterior :: Ver tema siguiente  
Autor Mensaje
Mensaje    Asunto: Alternar color de filas en un TListView Responder citando

Hola.

Estuve probando hace tiempo un código de _Leo para dar color a filas de un TStringGrid. El código es perfecto y funciona.
El otro día intenté "adaptar" ese código a un TListView (estilo informe) y después de muchos intentos logré que me pintara las líneas de color, pero no he conseguido "pintar" los textos. He probado los eventos OnDrawItem, OnCustomDrawItem y OnCustomDrawSubItem, y me gustaría que alguien me indicara cómo utilizarlos. En los eventos "custom" no aparece el TRect &R, es decir, la superficie pintable donde encajar mis textos y gráficos. He guardado el R del OnDrawItem en una variable global para luego llamar a los eventos "custom", pero no funciona.
¿Alguna sugerencia?

Saludos a todos y Feliz Navidad.
_________________
Nunca digas "Es imposible" sin intentarlo antes.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

A mi con el siguiente código me funciona bién:
Código:

void __fastcall TForm1::ListView1CustomDrawItem(TCustomListView *Sender,
      TListItem *Item, TCustomDrawState State, bool &DefaultDraw)
{
    if (Item->Index&1){
      Sender->Canvas->Brush->Color = clGray;
      Sender->Canvas->Font->Color = clYellow;
    }
    else {
     Sender->Canvas->Brush->Color = clWhite;
     Sender->Canvas->Font->Color = clNavy;
    }
}

Prueba y ya me dirás qué tal. Feliz año.
_________________
¡ADELANTE CON ESTE SUPER FORO!
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mensaje    Asunto: Responder citando

Hola Tugui.

Funciona perfectamente. El problema estaba en que había puesto la propiedad OwnerDraw a true y por eso no me dibujaba los items, porque no había ninguna función que lo hiciera.
Si quisiera dibujar los SubItems a mano (para incluir dibujos, estilos de texto, etc)... ¿cómo se podría hacer?

Un saludo y Feliz Año Nuevo.
_________________
Nunca digas "Es imposible" sin intentarlo antes.
Volver arriba
Ver perfil de usuario Enviar mensaje privado Enviar email
Mensaje    Asunto: Responder citando

Hola,
Hace ya algun tiempo consulte algo parecido para el treeview el proceso es practicamente el mismo.

https://cppbuilder.es/viewtopic.php?t=8439&highlight=tlistview

Un saludo
mopa
Volver arriba
Ver perfil de usuario Enviar mensaje privado
Mostrar mensajes de anteriores:   
Cambiar a:  
No puedes publicar temas nuevos en este foro
No puedes responder a temas en este foro
No puedes editar tus mensajes en este foro
No puedes borrar tus mensajes en este foro
No puedes votar en las encuestas de este foro


Hosting WordPress Indedmedia desde 3,99 €
© 2002–2026 Club Builder · Funciona con phpBB.