LOTUSSCRIPT /COM/OLE のクラス
ビューを表示するサブウィンドウがフォーカスの通知を受け取ると発生します。
メモ このイベントは R8.0.1 で新しく追加されました。
定義位置
NotesUIView
構文
OnFocus(Source As Notesuiview)
パラメータ
Source
ビューがフォームに埋め込まれている場合、埋め込みビューは個別のサブウィンドウとして扱われます。埋め込み先のフォームがフォーカスを受け取った場合、ビューの onfocus イベントコードは実行されません。ビューの onfocus イベントコードは、埋め込みビュー自体がフォーカスを受け取った場合のみ実行されます。埋め込みビューがフォーカスを受け取ると、埋め込み先のフォームはフォーカスを失います。埋め込み先のフォームがフォーカスを受け取ると、埋め込みビューはフォーカスを失います。
フォーカスを他のビュー、フォーム、またはサブフォームに変更する onfocus イベントに LotusScript を使用すると、サブウィンドウでフォーカスイベントが実行されます。まず、現在実行中の onfocus イベントコードが完了します。次に、現在のサブウィンドウで onblur コードが実行され、他の影響を受けるサブウィンドウで onfocus または onblur コードが実行されます。現在のコードすべての実行が終了するまで、onfocus または onblur イベントすべてがキューに入れられ、保留にされます。同じサブウィンドウに対する複数の onfocus または onblur イベントがキューに入れられた場合、onfocus は一度だけ実行されます。onfocus の実行が終了した後でサブウィンドウがフォーカスを持たなくなった場合、onblur は一度実行されます。
フォームにサブフォームがある場合、すべての onfocus および onblur イベントは単一のユニットと見なされます。すべてが実行されるか、何も実行されないかのどちらかです。
注意 onfocus または onblur イベントがキューに入れられるため、設計者はフォーカスがエンドレスループでサブウィンドウ間を渡されることがないように注意する必要があります。フォーカスをダイアログボックスに変更することは問題とはなりません。ダイアログボックスは onfocus または onblur イベントを持たないためです。ただし、フォーカスを別のビュー、フォーム、サブフォームに変更する場合は注意が必要です。onblur または onfocus イベントのデバッグには特に注意してください。デバッガの使用によりフォーカスの変更が頻繁に発生します。
例 関連項目