Einzelnen Beitrag anzeigen

Moombas
(Gast)

n/a Beiträge
 
#1

AW: VST Spalten automatisch an Komponentenbreite anpassen / best practice

  Alt 15. Mär 2019, 08:06
Ich kenne mich mit dem VST's kenn ich mich nicht aus, aber für ein Stringgrid passe ich die breite "autom." an die benötigte Breite an (das Speichern der vorherigen Breite wäre dann überflüssig), müsste hier ja ähnlich möglich sein:

Delphi-Quellcode:
GridColWidth(Stringgrid, 1, 0);

//Stringgrid Spaltenbreite anpassen
procedure TTools.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+10 // Spalte verbreitern
    end // for Spalte
  end // with
end;

Edit: Wenn man sie natürlich einfach einblenden/ausblenden kann (wie generic schrieb) ist das natürlich in diesem Fall wesentlich einfacher.
  Mit Zitat antworten Zitat