2012年5月3日木曜日

[delphi]グループコンポーネントの扱い

フォームにTEdit1~TEdit6という具合に複数コンポーネントがあってこれらを一括して扱うための方法を ( http://gumina.sakura.ne.jp/CREATION/OLD/COLUMN/CD1GOBJ.htm ) で見つけたのでメモ。

c番目のTEditのTextフィールドを書き換えたい場合

// 宣言部
var str : array[1..6] of TEdit;

for i := 1 to 6 do str[i] := TEdit(FindComponent('Edit'+InttoStr(i)));

//書き換え部
str[c].Text := 'replaced string';

-解説-
FindComponentは、string で指定した。コンポーネントがないか照査し、そのオブジェクトを返すという関数らしい。