2017-02-18 8 views
-5

実行時に作成されたコンポーネントの名前を知らなくてもそのプロパティを使用する方法はありますか?そして、これは私があなたがすでにこれをした後のことです。コンポーネントのプロパティに名前を知らずにアクセスするにはどうすればいいですか?

with TPanel.Create(self) do 
    begin 
    Name := 'Panel' + IntToStr(ComponentCount + 1); 
    Height := 50; 
    Width := 100; 
    Top := 30; 
    Left := 30; 
    Parent := self; 
    end; 
+2

'TList ' – whosrdaddy

答えて

7

タイプTPanelの変数を宣言し、その変数であなたのコンポーネントへの参照を格納します。

var 
    Panel: TPanel; 
.... 
Panel := TPanel.Create(Self); 

あなたはこの変数を使用してコントロールを参照することができます。

フォームのメンバーフィールド、配列、または実際には他のコンテナの変数として変数を保持する必要があります。

+0

のように、オブジェクトをコンテナに格納します。コンポーネントの数に制限はありません。 –

+2

そのすべてをpanel1と呼ぶことはできません。答えに記載されているように、それらを配列または別のコンテナに格納します。 –

+3

それは問題ではありません。答えは同じです。 –

関連する問題