Einzelnen Beitrag anzeigen

Dejan Vu
(Gast)

n/a Beiträge
 
#7

AW: Über String auf Komponente zugreife

  Alt 28. Jan 2016, 08:07
Ein TDBGrid funktioniert ganz ohne Deklaration der Spalten, aber man kann die anzuzeigenden Spalten explizit definieren (Doppelklick, oder Click auf 'Columns' Eigenschaft): Das Resultat sind einzelne Spaltenkomponenten, die aber auch in der Columnseigenschaft aufgelistet sind. Über diese Eigenschaft iteriert man und schaltet die Sichtbarkeit nach Gusto.

Delphi-Quellcode:
Procedure TMyForm.SetColumnVisibility(dBGrid : TDBGrid; columnName : String; visible : Boolean);
Var
  i : Integer;

Begin
  for i:=0 to dbGrid.Columns.Count-1 do
    if dbGrid.Columns[i].FieldName=columnName then begin
      dbGrid.Columns[i].Visible := visible;
      Exit;
    end;

  Raise Exception.CreateFmt('Grid enthält keine Spalte mit Namen: %s',columnName);
End;
Du sprichst von 'Komponentennamen', aber ich denke, Du meinst Feld/Spaltenname der Tabelle, oder?

Geändert von Dejan Vu (28. Jan 2016 um 08:14 Uhr)
  Mit Zitat antworten Zitat