![]() |
fixed Cols im Stringgrid
Hi,
ich habe hier ein Stringgrid mit 2 fixed Rows, da soll die Überschrift hin. Das Ding hat 10 Spalten. Über jeweils 5 dieser Spalten soll in der ersten fixed Row die eine Überschrift. In der zweiten fixed Row sollen für jede der Spalten eigene Überschriften stehen. Das Problem sind die senkrechten Striche. In der einen fixed Row brauche ich außer rechts und links nur einen. Vorab, so gehts schon mal nicht :
Delphi-Quellcode:
if sgNr.row = 1 then begin
sgNr.Options := sgNr.Options - [goFixedVertLine] end else sgNr.Options := sgNr.Options + [goFixedVertLine]; |
Re: fixed Cols im Stringgrid
Hi,
das einfachste dürfte es sein, du deaktivierst goFixedVertLine und zeichnest dir die Linien in der zweiten Zeile selbst:
Delphi-Quellcode:
Einen kleinen Schönheitsfehler hat das ganze, denn die Linien werden am oberen Rand der Zellen von den horizontalen weißen überzeichnet. Wenn das wirklich stören sollte, müsstest du die horizontalen Linien auch noch selbst zeichnen.
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); begin if ARow = 1 then with (Sender as TStringGrid).Canvas do begin Pen.Color := clBtnHighlight; MoveTo(Rect.Left, Rect.Top); LineTo(Rect.Left, Rect.Bottom); Pen.Color := clBtnShadow; MoveTo(Rect.Right - 1, Rect.Top + 1); LineTo(Rect.Right - 1, Rect.Bottom); Pen.Color := cl3DDkShadow; MoveTo(Rect.Right, Rect.Top); LineTo(Rect.Right, Rect.Bottom); end; end; |
Re: fixed Cols im Stringgrid
Das hört sich nicht sehr gut an. :twisted: Bei meinem Code wäre es dann wohl besser eine nicht-fixierte Row als fixierte darzustellen. Ist es möglich diese vertikalen Striche in einer einzigen normalen Row wegzumachen ? Gelungen ist es mir bisher allerdings auch nicht. :mrgreen:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:51 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