Einzelnen Beitrag anzeigen

grayfox

Registriert seit: 22. Jan 2003
Ort: Litschau
173 Beiträge
 
Delphi 4 Standard
 
#2

Re: in einem stringgrid den text in den column zentrieren

  Alt 26. Dez 2003, 00:35
hallo kiar!

ich glaub, du hast die arbeitsweise von 'drawcell' nicht richtig verstanden
drawcell zeichnet immer nur jene zelle, mit deren koordinaten es aufgerufen wird

--> procedure TForm1.SG1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);

wenn du in einer schleife durch deine spalten iterierst, ist es sehr wahrscheinlich, dass du
colwidth der letzten spalte für alle vorherigen auch zum zentrieren heranziehst. aus diesem grund
dürfte es bei dir nicht so gut aussehen

probiers mal auf diese art:
Delphi-Quellcode:
{$UNTESTED}

  s:=StringGrid1.Cells[ACol,ARow]
  StringGrid1.Canvas.FillRect(Rect); // Zellfarbe zeichnen
  DrawText(StringGrid1.Canvas.Handle, PChar(s), Length(s), Rect, DT_Center);
quelle: huberlix im vorigen beitrag

damit sollte es klappen

mfg, stefan
  Mit Zitat antworten Zitat