Hola, aprovechando que se puede asociar un puntero TObject* a cada elemento, podrías hacer una chapucilla así para que cada elemento mantenga asociado su color:
Código PHP:
void __fastcall TForm1::ListBoxLogDrawItem(TWinControl *Control, int Index,
TRect &Rect, TOwnerDrawState State)
{
ListBoxLog->Canvas->FillRect(Rect);
ListBoxLog->Canvas->Font->Color = (TColor)ListBoxLog->Items->Objects[Index];
ListBoxLog->Canvas->TextOut(Rect.Left + 1, Rect.Top, ListBoxLog->Items->Strings[Index]);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ButtonUpdateFirstLayerClick(TObject *Sender)
{
// Al añadir un elemento especificamos el color:
ListBoxLog->Items->AddObject("Rojo", (TObject*) clRed);
ListBoxLog->Items->AddObject("Naranja", (TObject*) RGB(255,165,0));
ListBoxLog->Items->AddObject("Verde", (TObject*) clGreen);
}