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 Spalten Breite ändern (https://www.delphipraxis.net/31663-stringgrid-spalten-breite-aendern.html)

gordon freeman 12. Okt 2004 13:27


Stringgrid Spalten Breite ändern
 
Hi Leute,
ich will die Spaltenbreite der 2. Spalte meines Stringgrids ändern.
Default is (glaub ich) 64. Nun soll es nur noch 10 sein.
Und gibt es eine Klamotte, wie in Excel, dass wenn man doppelt auf die Spalte klickt, sie die Breite ihres längsten Eintrags annimmt?

tia, read you, gordon

ibp 12. Okt 2004 13:34

Re: Stringgrid Spalten Breite ändern
 
imho nicht automatisch...
du kannst ja im ondraw ereignis die 2. spalte dementsprechen ändern

toms 12. Okt 2004 13:35

Re: Stringgrid Spalten Breite ändern
 
Zitat:

ich will die Spaltenbreite der 2. Spalte meines Stringgrids ändern.
Delphi-Quellcode:
Stringgrid1.ColWidths[1] := 10;

ibp 12. Okt 2004 13:36

Re: Stringgrid Spalten Breite ändern
 
hab noch nen code von mir gefunden...

Delphi-Quellcode:
//////////////////////////////////////////////////////////////////////////////
// Spaltengröße von StringGrids anpassen
//
// max=0 dann grid nach größter spaltenbreite anpassen
//
procedure GridColWidth(grd:TStringGrid;min,max:word);
var
  Zeile,Spalte,tmp,len: word;
begin
  with grd do begin // für alle Spalten
    for Spalte:=0 to (ColCount -1) do begin
      len:=0;
      for Zeile:=0 to (RowCount-1) do begin // für alle Zeilen
        tmp:=Canvas.TextWidth(Cells[Spalte,Zeile]);
        if tmp>len then len:=tmp // neue max Breite
      end; // for Zeile
      if max>0 then if len>max then len:=max; // Maximalbreite
      if len<min then len:=min; // Minimalbreite
      ColWidths[Spalte]:=len+GridLineWidth+5  // Spalte verbreitern
    end // for Spalte
  end // with
end;

kannst du ja anpassen

gordon freeman 12. Okt 2004 13:58

Re: Stringgrid Spalten Breite ändern
 
thx, funzt jetzt :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz