Для ведения журнала сообщений лучше использовать TListView, с инфо-иконками загруженными в TImageList. Переключаете его в режим vsReport, добавляете 1 колонку и вот такой функцией добавляете сообщения:
Код:
Const
mtInfo = 2;
mtSuccess = 3;
mtError = 4;
procedure LogMessage(Msg: String; MsgType: Integer);
begin
frmMain.Log.AddItem(Format('%s %s',[DateTimeToStr(Now),Msg]), nil);
frmMain.Log.Items[frmMain.Log.Items.Count-1].ImageIndex := MsgType;
frmMain.Log.Scroll(0, frmMain.Log.ListLineHeight);
Application.ProcessMessages;
end;