Hallo #,
der folgende Code versucht, Zelle 1,0 über 2 Zellen zu schreiben.
Das soll aber ohne
DefaultDrawing=False gemacht werden.
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
Grid.DefaultColWidth:= 28;
Grid.Cells[1,0]:= 'Januar';
end;
procedure TForm1.GridDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var
MyRect: TRect;
begin
if (ACol=1) and
(ARow=0) then
begin
Grid.DefaultDrawing:= False;
MyRect.TopLeft:= Rect.TopLeft;
MyRect.BottomRight:= Rect.BottomRight;
MyRect.Right:= Rect.Right*2;
Grid.Canvas.FillRect(MyRect);
DrawText(Grid.Canvas.Handle, PChar(Grid.Cells[ACol,ARow]),
Length(Grid.Cells[ACol,ARow]), MyRect, DT_LEFT);
end
else
begin
Grid.DefaultDrawing:= True;
end;
end;
Klappt aber nicht so richtig ;(
Sieht einfach nur doof aus ... (siehe Screenshot)
Z.B, die weisse Line hinter "Januar"
Wie macht man das richtig ?
Heiko