|
|
[サンプルコード]
下記の例は3階層のTreeItemをparamに指定された数ずつ追加します。
上位オブジェクトの名称を検索してリファレンスを求め、そのリファレンスにAppend
しています。
TreeView TreeView1 {
:
:
/* オブジェクト名称からオブジェクトリファレンスを特定 */
/* 引数:String findName オブジェクト名称 */
/* 戻値:オブジェクトリファレンス(エラー時NULL) */
Function FindItem( findName ) {
return _findItem( this, findName );
}
Function _findItem( parentItem, findName ) {
if (parentItem.name == findName) return parentItem;
if (parentItem.hasChildItems()) {
var childItems = parentItem.getChildItems();
for (var i in childItems) {
var c = _findItem( childItems[i], findName );
if ( c != null ) return c;
}
}
return null;
}
}
/* 以下の処理はイベントハンドラ等で行います。*/
/* 上位オブジェクトの名称から検索を行う方法*/
/* 1階層目 */
for (var i1 = 1; i1 <= param; i1++) {
/* pItem:上位オブジェクト名、sItem:自オブジェクト */
var pItem = "TreeView1";
var sItem = i1 * 100;
/* TreeItemを作成 */
var item = Form1.TreeView1.CreateItem("Item" + str(sItem));
/* 上位オブジェクトを検索し、そのリファレンスにAppend */
Form1.TreeView1.FindItem(pItem).Append(item);
/* 2階層目 */
for (var i2 = 1; i2 <= param; i2++) {
/* pItem:上位オブジェクト名、sItem:自オブジェクト */
var pItem = "Item" + str(i1) + "00";
var sItem = i1 * 100 + i2 * 10;
/* TreeItemを作成 */
var item = Form1.TreeView1.CreateItem("Item" + str(sItem));
/* 上位オブジェクトを検索し、そのリファレンスにAppend */
Form1.TreeView1.FindItem(pItem).Append(item);
/* 3階層目 */
for (var i3 = 1; i3 <= param; i3++) {
/* pItem:上位オブジェクト名、sItem:自オブジェクト */
var pItem = "Item" + str(i1) + str(i2) + "0";
var sItem = i1 * 100 + i2 * 10 + i3;
/* TreeItemを作成 */
ar item = Form1.TreeView1.CreateItem("Item" + str(sItem));
/* 上位オブジェクトを検索し、そのリファレンスにAppend */
Form1.TreeView1.FindItem(pItem).Append(item);
}
}
}
画面イメージ
|
ウォッチビュー(オブジェクト)
|
CRSファイル形式のサンプルを
「上位オブジェクト名を利用したTreeView動的生成サンプル(Tre_002.zip)」
よりご利用いただけます。
|
|