|
||
解説: コンポーネントオブジェクトの共通上位オブジェクト、TComponent を使うとコンポーネントに配置してあるコンポーネントの数を調べたり、インデックス付きでアクセスしたりする、などができます。 コンポーネントが特定のクラス(TButton など)を示しているかどうか調べる時にも使えます。 使用例: 今回は、Form に配置したコンポーネントの名前を調べて、ListBox に表示させています。 コンポーネントは、Label, OpenDialog, Edit, CheckBox など適当に選んで配置してください。 OnClick イベントにコードを記述しますので、Button をひとつと表示用に ListBox を置いておきます。 Button1 の OnClick イベントで、Form に配置したコンポーネントの数を調べます。 コンポーネントの数だけ、名前を調べ、 ListBox に表示していきます。 //------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { //Form1 の全コンポーネントの名前をリストボックスにリストします。 //配置されているコンポーネントの数を取得 for (int i = 0; i < ComponentCount; i++) //コンポーネントの名前をリストアップする ListBox1->Items->Add(Components[i]->Name); } //------------------------------------------------------------------- |