avEvent イベントについて知っておくべきことが以下に示されています。
Withid
イベントの識別。 到着したイベントを構造的に優れた方法で処理するには、以下のようになります。
Evtroutine Handling(#Com_owner.avEvent) WithId(#EventId)
Case #EventId.Value
When (= Event1)
<< Execute subroutine or invoke method to handle event 1 >>
When (= Event2)
<< Execute subroutine or invoke method to handle event 2 >>
When (= Event3)
<< Execute subroutine or invoke method to handle event 3 >>
... etc ...
EndCase
Endroutine
WithAInfo1 -> WithAInfo5
これを使用して、イベントが通知されたときに、SendAInfo1 -> SendAInfo5 の値を受信します。
WithNInfo1 -> WithNInfo5
これら使用して、イベントが通知されたときに指定した SendNInfo1 -> SendNInfo5 の値を受信します。
Sender
これでイベントを通知したコンポーネントの名前を指定します。
一般的には、以下のように使用されます。
EvtRoutine Handling(#Com_owner.avEvent) Sender(#Sender)
* このイベントがこのコンポーネント自身から通知されていなかった場合
If (#Sender *ne #Com_Owner.Name)
<< イベント処理 >>
Endif
VLF-ONE では、同じロジックにパラメータ NotifySelf(False) を利用できます。
#Com_Owner.avFilterActivated および #Com_Owner.avHandlerActivated
フィルターおよびコマンド・ハンドラーには、現在有効になっているかどうかを示すプロパティがあります。次のようなものです。
これらのプロパティには、文字列TRUEまたはFALSEが含まれます。
これらのプロパティを使用すると、フィルターやコマンド・ハンドラーのロジックで、そのフィルターやコマンド・ハンドラーが現在有効な状態であるかどうかをテストできます。通常、このロジックは通知されたイベントを無視するかどうかをテストするのに使用されます。
フィルターやコマンド・ハンドラーは、ユーザーとやり取りできる状態にある場合に有効になっています。
最小化、非表示、または非アクティブ化されたウィンドウのフィルターやコマンド・ハンドラーも、依然として有効であると考えられます。
プログラムにとって重要なイベントのみチェックするようにしてください。
その他のイベントはできるだけ早いうちに無視してください。
アプリケーションを実装する中で、以下のようにイベントのテーブルを保守することが有意義なことがわかってきます。
_____________
FRAMEWORK
BUSINESSOBJECT
TRUE
/ FALSE
1=
2=
3=
4=
5=