Ver Mensaje Individual
  #3  
Antiguo 26-06-2008
Ziara Ziara is offline
Miembro
 
Registrado: dic 2007
Posts: 43
Reputación: 0
Ziara Va por buen camino
>Puedes explicar exactamente como haces ese coloreado de las filas?

>Que código usas y desde donde usas ese código (evento, método redefinido, etc...)

Hola,

estoy programando en builder6, tengo un ListView en un Form1 y en el Unit.h asociado llamo al evento ListViewCustomDrawItem del siguiente modo:

Código:
void __fastcall TForm1::ListViewCustomDrawItem(TCustomListView *Sender,
      TListItem *Item, TCustomDrawState State, bool &DefaultDraw)
{
 Sender->Canvas->Font->Color = clRed;

 if (snf2->Proto() == "TCP")
 {
  Sender->Canvas->Font->Color = clGreen;
 }
  if (snf2->Proto() == "UDP")
 {
  Sender->Canvas->Font->Color = clBlue;
 }
 if (snf2->Proto() == "ARP")
 {
  Sender->Canvas->Font->Color = clPurple;
 }
}
donde snf2 es un objeto de una clase y Proto() es un método de dicho clase, y snf2->Proto() me devuelve el tipo de protocolo que dependiendo del que sea se pinta las letras de un color u otro.

Lo que sucede lo he mencionado antes, que en tiempo de ejecución funciona bien, pero al terminar de sacarme las filas y muevo el scroll vertical o pincho sobre alguna fina o minimizo la aplicaciones todas las filas me aparece el color por defecto, que en este caso es rojo.

Alguien sabe por qué?
Responder Con Cita