![]() |
Wie kann ich die Namen aller DBGrids auf einer Form ermittel
Hallo zusammen,
wie kann ich die Namen aller DBGrids auf einer Form ermitteln ? und diese z.B. in eine StringList schreiben ? Gruss Holger |
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Hi!
Du könntets die Liste aller Controls durchgehen und schauen, wenn es ein DbGrid ist --> Namen reinschreiben
Delphi-Quellcode:
Form1.Controls[]
Ciao, Frederic |
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
1. Interiere über alle Controls der Form und überprüfe den Typ.
|
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i: integer; begin for i := 0 to ComponentCount - 1 do if Components[i] is TDBGrid then ListBox1.Items.Add(Components[i].Name); end; |
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Vielen dank für die Hilfen,
und wie sae ich dem ComponentCount, um welche Form es sich handelt ? Gruss Holger |
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Schreib sie einfach davor: TFrmMain.ComponentCount. Dann musst Du das bei Components natürlich auch machen ;)
|
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Es handelt sich um die Instanz, in der der Code steht (Self)
|
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Fantastisch,
das klappt alles. Will das nun in eine Funktion packen. Welche deklaration muss ich für Componenten nehmen ? Als Componente soll mal DBGrid mal ComboBox mal was anderes ... rein.
Delphi-Quellcode:
Gruss
function Komponenten_ermitteln(Form:TForm; Komponente: ???):String;
var I: integer; Wert: String; begin For I := 0 to Form.ComponentCount - 1 do begin if Form.Components[I] is Komponente then begin Wert := Wert + Form.Components[I].Name + #13#10; end; end; Result := Wert; end; Holger |
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Schau mal in der Code-Library:
![]() Durch Benützung von Callbacks sind die Funktionen universell einsetzbar. |
Re: Wie kann ich die Namen aller DBGrids auf einer Form ermi
Du musst als Komponente diejenige Komponente nehmen, die beiden als nächsthöhere Instanz gleich ist.
Im Zweifelsfall nimm TWinControl, das trifft bei den meisten zu. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:40 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