On Event ステートメント (LotusScript 言語)

イベント処理サブルーチンを IBM® ソフトウェアオブジェクトに対応したイベントにバインドしたり、バインドを解除したりします。

注: ソフトウェアアプリケーションの中には、オブジェクトイベントごとに空のサブルーチンや関数を提供するものがあります。その場合、On Event ステートメントを使用する必要はありません。適切なサブルーチンや関数にスクリプトを入力すると、イベントが発生したときにそのスクリプトが自動的に実行されます。詳しくは、製品のマニュアルを参照してください。

構文

On Event eventName From prodObject { Call handlerName | Remove [ handlerName ] }

要素

eventName

製品固有のクラス定義に記述されているイベント名です。

prodObject

製品のオブジェクトへの参照を値に持つ式です(ユーザー定義のクラス定義にはイベントを記述できません)。

Call

handlerName サブルーチンを、指定した prodObject の指定した eventName にバインドします。

handlerName

指定した eventNameprodObject のエラー処理サブルーチンの名前。指定したオブジェクトに指定したイベントが発生するたびに、handlerName が呼び出されます。

Remove

handlerName サブルーチンをオブジェクトとイベントの組から解放します。handlerName が記述されていないと、このステートメントはすべてのイベント処理サブルーチンをオブジェクトとイベントの組から解放します。

使用法

イベント処理サブルーチンは、他のサブルーチンと同じように定義されます。ただし、最初のパラメータはイベントを発生させる製品オブジェクトへの参照でなければなりません。残りのパラメータは、製品クラスのイベントによって定義され、ハンドラの呼び出し内で使用されます。

複数の On Event ステートメントを使用して、同じオブジェクトの同じイベントに対して複数のイベント処理サブルーチンを指定できます。同じイベントに対してバインドしたイベント処理サブルーチンの実行順序は不定です。

関数が必要となるのは、イベントがハンドラからの戻り値を必要とする場合だけです。

注: LotusScript® が認識する 3 タイプのオブジェクト (OLE/COM オブジェクト、LotusScript 製品オブジェクト、LotusScript 固有のオブジェクト) のうち、イベントを登録できるのは LotusScript 製品オブジェクトだけです。