Autor Beitrag
rebesky
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Di 08.04.03 18:31 
hallöchen!

Wie kann ich den Inhalt einer Zelle in einem Stringgrid zentrieren? Habe im Archiv nichts dazu gefunden... :roll:

Gruß,

Björn
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Mi 09.04.03 06:31 
Hi
dann haste nicht sonderlich gut gesucht :mrgreen: und in der falschen Sparte gepostet
z. B.www.delphi-forum.de/...tringgrid+ausrichten

Gruss Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
kiwicht
ontopic starontopic starontopic starontopic starontopic starofftopic starofftopic starofftopic star
Beiträge: 1021

Win 7, MacOS
Delphi x, VBA, PHP, ...
BeitragVerfasst: Mi 09.04.03 07:25 
oder er meint mit Zelle den Inhalt der Zelle einer Datenbank, den er in einem Stringrid anzeigen lassen will.
aber auch dazu gab's schon ma ne Frage


www.delphi-forum.de/...=7598&highlight=

(von meiner einer seiner Wenigkeit sogar ;), und beantwortet von LCS ... :D )

mfg
rebesky Threadstarter
Hält's aus hier
Beiträge: 8



BeitragVerfasst: Mi 09.04.03 15:13 
Hallo!

Die Verweise, die ihr mir gegeben habt, sind zwar alle nett und herrlich kompliziert, ich habe es aber inzwischen selber gefunden (God bless google ;)

Ich mache das so (für alle, die es später mal suchen...):


ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure TMain.GridDrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var tc, tw : integer;
begin
  with Sender as TStringGrid do
  begin
    with Grid.Canvas do
    begin
      // Text zentrieren und ausgeben
      tw := TextWidth(Grid.Cells[ACol,ARow]);
      tc := Rect.Left + (Rect.Right - Rect.Left - tw) div 2;
      TextRect(Rect,tc,Rect.Top+2,Cells[ACol,ARow]);
    end;
  end;
end;


MfG,

Björn :)