Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi StringGrid rechte Spalte dynamische Breite (https://www.delphipraxis.net/84538-stringgrid-rechte-spalte-dynamische-breite.html)

Klaus01 18. Jan 2007 10:01


StringGrid rechte Spalte dynamische Breite
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen,

was muß ich tun oder wo einstellen damit die rechte Spalte des StringGrids
immer mit der rechte Kante des StringGirds bündig ist.

Auch wenn ich die Form während der Laufzeit in der Größe ändere
möchte ich die Spalte rechtsbündig in der Form haben.
Das StringGrid ist mit Align:=alClient auf die Form
festgenagelt.

Ich stehe da irgendwie auf dem Schlauch.

Grüße
Klaus

marabu 18. Jan 2007 10:23

Re: StringGrid rechte Spalte dynamische Breite
 
Hallo Klaus,

so könnte es funktionieren:

Delphi-Quellcode:
procedure MaximizeCol(sg: TStringGrid; index, minWidth: Integer);
var
  iCol, iWidth: Integer;
begin
  with sg do
    if (index < ColCount) and (index > 0) then
    begin
      iWidth := ColCount * GridLineWidth + Ord(BorderStyle) * 3;
      for iCol := 0 to Pred(ColCount) do
        if iCol <> index then
          Inc(iWidth, ColWidths[iCol]);
      ColWidths[index] := Max(minWidth, Width - iWidth);
    end;
end;
Grüße vom marabu

Klaus01 18. Jan 2007 10:31

Re: StringGrid rechte Spalte dynamische Breite
 
Hallo Achim,

funktioniert hervorragend.

Vielen Dank.

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:29 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-2025 by Thomas Breitkreuz