NOTE!

Q 31
イベントは上位に伝播する

A 31
イベントはイベントハンドラにより捕捉されるまで"//"オブジェクトを頂点とするオブジェクトツリーを上位に向かって伝播して行きます。
伝播の過程でイベントハンドラにより捕捉されるか、最終的に"//"オブジェクトに到達したときに消滅します。

例えばダイアログを表示する場合、Getしたオブジェクトの下位オブジェクトとしてオブジェクトツリーに接続されますので、ダイアログで発生したイベントがどの様に伝播するのか意識する必要があります。
詳細は、Biz-Tips > Dialog > Dialog表示がループする をご参照ください。

下位オブジェクトで処理されるイベントハンドラと異なる処理を上位オブジェクトの同イベントで捕捉する場合には、ObjectクラスのPostEventメソッドを利用します。



[サンプルコード]

Form Form1{
    :
    Label Label1{
        :
        Function OnRClicked(e){
            Value = "Label1の右クリックです";
            PostEvent();  /* さらに上位にイベントを伝播します */
        }
    }
    Function OnRClicked(e){
        this.popupMenu( "メニュー1","メニュー2","メニュー3" );
    }
}
管理番号:Pnt_013
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser・Biz/Designer TIPS集 トップへ