Muže mi někdo řict kde dělam kopanec.
Toto fungovalo dokud jsem vkladal hodnoty do sloupce 11 přimo s form.
Když jsem zdrojak překopal a vkladam hodnoty s vlakna, funguje to ale vykresluje až když přesunu form mimo obrazovku a pak zpět nebo přeroluji tabulku.
Kód: Vybrať všetko
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
CV: TCanvas;
sCellString: String;
I: integer;
neni: boolean;
begin
with TStringGrid(Sender) do
begin
canvas.Brush.Color := clWindow;
Canvas.FillRect(Rect);
if (ACol=0) then
begin
if (StringGrid1.Cells[11, ARow]='rsTimeOut') then
ImageList.Draw(Canvas,Rect.Left,Rect.Top,0);
ImageList.Draw(StringGrid1.Canvas, Rect.Left+4 , Rect.Top +4 , 0);
end
else
Canvas.TextOut(Rect.Left, Rect.Top, Cells[ACol, ARow]);
end;
Hodnoty do bunky zapisuji přes proceduru, kterou ve vlaknu volam Synchronize(zapis);