API version 1
- ‐
findObject¶
オブジェクトツリーからオブジェクトを検索します。
呼出形式一覧
呼出形式 |
説明 |
---|---|
reference findObject(string name[, integer rule]) |
name名のオブジェクトを検索します。 |
reference findObject(class cls[, integer rule]) |
clsクラスのオブジェクトを検索します。 |
戻り値一覧
戻り値 |
説明 |
---|---|
reference |
オブジェクトが見つかった場合は、そのオブジェクトのリファレンスを返します。 オブジェクトが見つからなかった場合はnullを返します。 |
引数一覧
引数 |
説明 |
||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
name |
検索するオブジェクトの名前 |
||||||||||
rule |
検索のルール どのような規則で検索を行うかを以下から指定します。
省略時にはObject.FIND_CHILDを指定した場合と同じ動作となります。 |
||||||||||
cls |
検索するクラス識別子 |
例外
なし
使用例
/* 親または先祖からFormオブジェクトを検索 */
var form_obj = findObject(Form, FIND_ANCESTOR);
/* イベントハンドラと同じルールでファンクションを検索 */
var fnc = findObject("OnTouch", FIND_EVENTPATH);
if (fnc != null) {
fnc(e);
}
/* オブジェクトスコープのルールで、txCodeを検索 */
var obj = findObject("txCode", FIND_SCOPEPATH);
if (obj != null) {
obj.bgColor = "red";
}
関連項目
getChildObjects メソッド
定数一覧
------------------------------------------------------------
定数値 |
説明 |
---|---|
FIND_CHILD |
0:子オブジェクトから検索します。 |
FIND_ANCESTOR |
1:親または先祖から検索します。 |
FIND_SCOPEPATH |
2:子、自分、親、先祖の順に検索します。 |
FIND_EVENTPATH |
3:子、親、親の子、先祖、先祖の子の順に検索します。 |
使用例
CRSダウンロード
ダウンロード(Dialog12.crs)
Form Objcntl {
x = 0;
y = 0;
width = 800;
height = 600;
TextBox textbox1 {
x = 100;
y = 120;
width = 168;
height = 48;
}
Button button1 {
x = 100;
y = 200;
width = 160;
height = 48;
Title = "ユーザー定義イベントを\r\n発生させる" ;
function onTouch(e) {
var eventname = "UserEvent";
var userEvent1 =
new Event(eventname) {
String data ;
}
userEvent1.data.Value = ^.TextBox1.Value;
PostEvent(userEvent1) ;
}
}
function OnUserEvent(e) {
//.MessageBox(e.data.Value) ;
print("from = ",e.from) ;
var child = new Number[5];
child[0] = 5;
child[1] = 4;
child[2] = 3;
child[3] = 2;
child[4] = 1;
append(child, "TheArray");
print("clasName=",child.className) ;
print("array=",child.isArray," inx= ",child.index," Len= ",child.length);
print("name=",child.name);
print("type=",child.subType);
print("change=",child.useChange);
var fun = findObject("TheArray", FIND_EVENTPATH);
if (fun == null) { print("null return") ; } ;
print("find=",fun);
for (var i in child) {
print(" indx=",i, " value=",child[i].value, "\n");
}
child.insert( 0 ) ;
var ca = getChildObjects();
for (var j in ca) {
if (ca[j] != null) {
print("inx= ", j, " value= ",ca[j].value ) ;
}
}
//.get("dialog12.crs");
/* child.truncate() ; #このサンプルでは使えません */
}
}