![]() |
Re: Zellen verbinden
hey...
taaktaak, das is genau das richtige!!!! Danke |
Re: Zellen verbinden
Jooo, aber das mit dem 3D-Effekt ist natürlich Mist. Da muss ich noch mal etwas grübeln....
|
Re: Zellen verbinden
Grrr wieder roter Kasten :cry: :cry:
Die Textausgabe machst du mit DrawText. So wie schon geschrieben. Ich mach noch mal den Code fertig. So hier:
Delphi-Quellcode:
procedure TfoTest05.StringGrid1DrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState); var r: TRect; MyStr : String; begin if aRow=1 then begin if acol=1 then begin with TStringgrid(Sender) do begin R := Classes.Rect(Rect.Left+1, Rect.Top - (Rect.Bottom - Rect.Top), Rect.Right-1, Rect.Bottom-1); Canvas.Brush.Color := clRed; Canvas.FillRect(R); MyStr := Cells[ACol, ARow-1]; DrawText(Canvas.Handle, PChar(MyStr), -1, R, DT_CENTER or DT_VCENTER or DT_wordbreak); end; end; end; |
Re: Zellen verbinden
cool...langsam wirds genau so wie ich es mir vorgestellt hab...VIELEN DANK!! wenn ich jetzt auf das obere feld klicke verschwindet die markierung....es soll gar nich rot sein, sonder clBtnFace...
|
Re: Zellen verbinden
so denne, ändere clred in clBtnFace
|
Re: Zellen verbinden
hab ich schon gemacht ;)
|
Re: Zellen verbinden
nur mal am Rande. Der Fehler war, dass der Text in Zeile 0 steht. Das Verbinden wird aber in Zeile 1 vorgenommen. Somit muß der Zellzugriff ARow-1 sein.
|
Re: Zellen verbinden
wenn ich das mache sind die zellen nicht mehr verbunden, also 0 und 1 sollen verbunde werden
|
Re: Zellen verbinden
Liste der Anhänge anzeigen (Anzahl: 1)
So, die Lösung unter Berücksichtigung des 3D-Effekt (fast OK):
Delphi-Quellcode:
Jetzt zeichnen wird eine Spalte SPÄTER - nachdem das Grid den 3D-Effekt gemalt hat - unsren Text in die VORHERGEHENDE Spalte! Jetzt sind nur noch winzige Punkte vom 3d-Effekt an den Aussenseiten zu sehen!
procedure TfoTest05.StringGrid1DrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState); var r: TRect; begin if aRow=1 then if acol=2 then // << in Spalte 2 wird der Inhalt von Spalte 1 gezeichnet with TStringgrid(Sender) do begin R := Classes.Rect(Rect.Left-ColWidths [ACol-1], // << !!! Rect.Top -RowHeights[ARow-1], // << !! Rect.Left-2, Rect.Bottom-1); Canvas.Brush.Color := clRed; Canvas.FillRect(R); DrawText(Canvas.Handle, PChar('Hallo ich bin es, der hier was schreibt'), -1, R, DT_CENTER or DT_VCENTER or DT_WORDBREAK); end; end; end; |
Re: Zellen verbinden
und wo ist dein Text?
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz