Si en el componente no tienes eventos disponibles, siempre puedes crear un derivado/heredado.
En ese caso, puedes acceder (sobreescribir) el procedimiento
DrawItem, que es virtual en clases ancestras (
TFileListBox) o capturar alguno de los mensajes que utilizan (también clases ancestras) relacionados con el pintado de los items; Como pueden ser
WMPaint o
CNDrawItem (ambos en
TCustomListBox).
Código Delphi
[-]
TMyFileListBox = class(TFileListBox)
protected
procedure DrawItem(Index: Integer; Rect: TRect; State: TOwnerDrawState); override;
procedure WMPaint(var Message: TWMPaint); message WM_PAINT;
procedure CNDrawItem(var Message: TWMDrawItem); message CN_DRAWITEM;
end;