![]() |
Komponenten einer Groupbox durchlaufen
Hi!
Wie kann man alle Komponenten einer Groupbox mit einer Schleife durchlaufen? Ich hab's über Components probiert, aber ComponentsCount ist komischerweise 0. Ist das überhaupt möglich? |
Re: Komponenten einer Groupbox durchlaufen
Alle Komponenten, deren Owner = deine groupbox ist, solltest du da erreichen können.
Schau mal in den Designer bzw. deine Struktur. Eventuell liegen die Konmponenten nur über der Groupbox auf der Form. |
Re: Komponenten einer Groupbox durchlaufen
Hm, funzt irgendwie nicht. So sieht der Code aus:
Delphi-Quellcode:
In der Struktur sind alle Komponenten übereinander angeordnet, dort kann ich also nicht sehen, ob die Groupbox der Owner ist. Ich kann die Komponenten zur Designzeit aber nicht aus der Groupbox rausschieben. Deswegen meine ich, dass die Groupbox der Owner sein müsste.
for I := 0 to ComponentCount - 1 do
if (Components[I].Owner = GroupBox1) then TControl(Components[I]).Enabled := True; Wie geht's dann? |
Re: Komponenten einer Groupbox durchlaufen
Hallo Cöster,
normalerweise ist der Owner einer Komponente immer das Formular, auf dem die Komponente im Designer gelegt wurde. Über den Owner einer Komponente kann man dann mit ComponentCount und Components[] die Komponenten abfragen. Eine Lösung wäre also:
Delphi-Quellcode:
Leider bekommt man dann alle Komponenten des Formulars und nicht nur jene, die in der GroupBox liegen.
for ii := 0 to Pred(aForm.ComponentCount) do begin
// do something end; // for ii Da die Komponenten in der GroupBox alle die GroupBox als Parent haben, kann man mit ControlCount und Controls[] arbeiten. Das sieht dann so aus:
Delphi-Quellcode:
** ungetestet **
for ii := 0 to Pred(aGroupBox.ControlCount) do begin
ShowMessage(aGroupBox.Controls[ii].Name); end; // for ii Viele Grüße, pszopp |
Re: Komponenten einer Groupbox durchlaufen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 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 by Thomas Breitkreuz