NOTE!

Q
イベントの発生順序は保証されない

A
Biz/Browserでは、イベントの発生順序性は保証されないと考えてください。
Biz/Browserは、Windowsのメッセージ処理により発生したイベントをリアルタイムに受け取り、処理を行います。
イベントの発生タイミングおよび、イベントの発生要因がWindowsに依存します。

  例えば、TextBox1からTextBox2へフォーカスが遷移する場合、TextBox1のLostFocusイベントとTextBox2のGetFocusイベントの順序が逆転することはありませんが、この順序性はWindowsに依存するものです。
また、上記の例で、TextBox1のLostFocusイベントのイベントハンドラ内で別のTextBox3のValue値を変更した場合、TextBox3のUseChangeプロパティをTRUEに設定しているとTextBox3のChangeイベントが発生します。
このとき、TextBox2のGetFocusイベントとTextBox3のChangeイベントの発生順序は保証されません。
これは、TextBox2のGetFocusイベントはWindowsのメッセージ処理により発生し、TextBox3のChangeイベントはスクリプトの実行により発生します。これらのイベントの間には、何も相関性が無いためです。

ユーザの操作により様々なイベントの発生順序が考えられますので、イベントの発生順序に依存する設計は避けてください。

上記のケースでは、TextBox1にフォーカスがある時、Biz/Browser以外のウィンドウをアクティブにすると、TextBox1のLostFocusイベントは発生しますが、TextBox2のGetFocusイベントは発生しません。また、Biz/Browserのウィンドウを再びアクティブにした時には、TextBox1のGetFocusイベントが発生します。

管理番号:PntM_016
  Biz-Collections Bizの宝箱 トップへ
  Biz/Browser Mobile・Biz/Designer Mobile TIPS集 トップへ