| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Vie 15 Ene, 2010 2:41 pm Asunto: ListView con Items de colores |
|
|
Hola amigos del foro
Tengo la necesidad de agregar valores a un listview dichos valores pueden ser numeros (por ejemplo):
1
2
3
4
1
20
3
Lo que necesito es que los numeros que sean iguales se resalten ( | Código: | Sender->Canvas->Brus-.Color = clRed | )de un color x y los que no no se resalten, en el caso que planteo el 1 seria color rojo y el 3 de color azul y asi susesivamanete distintos colores siempre que sean numeros distintos.
He tratado con un ordenamiento sencillo (tipo bubuja) para pintarlos en el CustomDrawItem pero no obtengo el resultado y quiciera tratar de resolverlo, alguien me pudiera ayudar por favor?
el codigo que tengo es
| Código: | for (int i = 0; i <lv>Items->Count; i++){
for (int j = i + 1; j <lv>Items->Count; j++){
if (lv->Items->Item[i]->SubItems->Strings[1] ==
lv->Items->Item[j]->SubItems->Strings[1]);
Sender->Canvas->Brush->Color = clRed;
else
Sender->Canvas->Brush->Color = clBlue;
}
} |
saludos y gracias _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Sab 16 Ene, 2010 4:34 pm Asunto: |
|
|
Creo que este ejemplo te aclarará tus dudas:
| Código: | void __fastcall TForm1::lvCustomDrawItem(TCustomListView *Sender,
TListItem *Item, TCustomDrawState State, bool &DefaultDraw)
{
for (int i = 0; i < lv->Items->Count; i++){
if(Item == lv->Items->Item[i]) continue;
if (Item->SubItems->Strings[1] == lv->Items->Item[i]->SubItems->Strings[1]){
Sender->Canvas->Brush->Color = clRed;
break;
}else
Sender->Canvas->Brush->Color = clBlue;
}
}
|
Saludos. |
|
| Volver arriba |
|
 |
ifrit Master


Registrado: 12 Jun 2007Mensajes: 509Ubicación: La Habana, Cuba
|
Publicado: Lun 18 Ene, 2010 3:03 pm Asunto: Agradecido |
|
|
Hola scafandra, muchas gracias por el codigo que me mandas, es exactamente lo que deseaba, solo me toca hacer algunas modificaciones. Ya me rompere la cabeza en ello.
Hasta ahora son dos colores rojo para los iguales y azul para los distintos, pero mi necesidad es que para los distintos sea azul y por cada par o tripleta , etc que sean iguales otros colores distintos cada unos. _________________ Todos somos ignorantes, lo que no todos ignoramos lo mismo... |
|
| Volver arriba |
|
 |
|