4D v16.3ON EVENT CALL |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v16.3
ON EVENT CALL
ON EVENT CALL
ON EVENT CALL コマンドは、イベントを検知するメソッドであるeventMethodをインストールします。このメソッドは、イベント処理メソッドまたはイベントキャッチメソッドと呼ばれます。 Tip: このコマンドの使用には、上級のプログラミング知識が必要です。通常、イベントを用いて作業を実行する際に、ON EVENT CALL コマンドを使用する必要はありません。フォームの使用において、イベントは4Dによって管理され、適切なフォームやオブジェクトにイベントが送信されます。 Tip: GET MOUSEやShift down等のコマンドを使用して、イベントに関する情報を取得できます。これらのコマンドをオブジェクトメソッドでコールし、オブジェクトに関連するイベントについての必要な情報を取得することができます。これらのコマンドにより、ON EVENT CALL コマンドをもとにしたアルゴリズムを作成する必要がなくなります。 このコマンドのスコープは、現在の作業セッションです。デフォルトで、別々のローカルプロセス内でメソッドが実行されます。いちどに1つのイベント処理メソッドだけを使用できます。メソッドを用いたイベントの検知を中止するには、eventMethodに空の文字列を指定して再度ON EVENT CALL コマンドをコールします。 イベント管理メソッドは別プロセスとして実行されるため、4Dメソッドが1つも実行されなくても、常にアクティブになります。インストール後はイベ ントが発生するたびに4Dがイベント処理メソッドを呼び出します。管理できるイベントは、マウスボタンのクリックとキーボードからの入力です。 オプションのprocessName引数は、ON EVENT CALL コマンドで作成されるプロセスの名前です。processNameの先頭にドル記号 ($) を付けるとローカルプロセスが開始されます。通常はこのローカルプロセスを使用します。processName引数を省略した場合、デフォルトで4Dは$イベントマネージャーという名前のプロセスを作成します。 警告: イベント処理メソッドで実行する処理については十分注意してください。イベントを発生させるコマンドはコールしないでください。このようなコマンドをコー ルした場合、イベント処理メソッドの実行から抜けるのが非常に困難になります。Ctrl+Shift+Backspace(Windows)または Command-Shift-Control-Backspace(Macintosh)キーにより、イベントマネージャープロセスを終了させることができます。イベント管理が正常な動作ではなくなった場合に、この手法を利用して回復することが可能です。 イベント処理メソッドでは以下のシステム変数を読み取ることができます: MouseDown, KeyCode, Modifiers, MouseX, MouseY, そして MouseProc。これらの変数がプロセス変数であるという点に注意してください。したがって、変数のスコープはイベント処理プロセス内です。別のプロセスでこれらの値が必要な場合、インタープロセス変数へコピーしてください。
次の例は、ユーザがCtrl+ピリオド(Windows)またはCommand+ピリオド(Macintosh)を押したら、印刷を中止します。ま ず、イベント処理メソッドをインストールします。次にユーザにメッセージを表示して、印刷を中止できることを知らせます。イベント処理メソッド内でイン タープロセス変数<>vbWeStopにTrueが代入されると、既に印刷されたレコードの数をユーザに知らせます。最後にイベント処理メソッドをクリアします: PAGE SETUP Ctrl+ピリオドが押されると、イベント処理メソッド内で<>vbWeStopがTrueに設定されます: ` EVENT HANDLER project method この例題では、ON EVENT CALLが使用されている点に注意してください。これは、ループでPAGE SETUP、PRINT FORM、PAGE BREAKコマンドを使い、特別な印刷用レポートを生成しているためです。 PRINT SELECTIONコマンドを使ってレポートを印刷する場合、ユーザに印刷を中断させるようなイベント処理を実行する必要はありません。この処理はPRINT SELECTIONコマンドにより自動的に行われます。
参照
|
プロパティ
プロダクト: 4D 履歴
初出: < 4D v6 ARTICLE USAGE
ランゲージリファレンス ( 4D v16) |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||