Visual LANSA フレームワーク ガイド > フレームワーク・プログラミング > フィルターおよびコマンド・ハンドラーの構造

フィルターおよびコマンド・ハンドラーの構造

VLF のフィルターおよびコマンド・ハンドラーは、

全ての VLF-ONE および VLF-WIN のフィルターまたはコマンド・ハンドラーの構造は次のようになっています。

VLF_Anatomy2

以下、フィルターやコマンド・ハンドラーに関する重要な項目です。

すべてのフィルターおよびコマンド・ハンドラーはフレームワークに組み込まれているベース・クラスに拡張(継承)されます。

フィルターは #VF_AC007O (VLF-ONE) または #VF_AC007 (VLF-WIN) という名前のクラスに拡張されます。

コマンド・ハンドラーは  #VF_AC010O (VLF-ONE) または VF_AC010 (VLF-WIN)という名前のクラスに拡張されます。

どちらの場合も、ベースクラスはコマンド・ハンドラーやフィルターに定義済みの一連の動作を提供します。

 

すべてのフィルターとコマンド・ハンドラーには uInitialize と呼ばれる、再定義可能なメソッドがオプションであります。

これは、フィルターやコマンド・ハンドラーが作成されると、1度だけ実行されます。

通常、フィルターとコマンド・ハンドラーが表示するフォームの詳細を入れるために使用されます。

 

すべてのフィルターとコマンド・ハンドラーには uTerminate と呼ばれる、再定義可能なメソッドがオプションであります。

これは、フィルターやコマンド・ハンドラーが削除されると、1度だけ実行されます。

通常、フィルターとコマンド・ハンドラーが使用している資源を解放するために使用されます。

 

通常、すべてのコマンド・ハンドラーには、再定義された uExecute メソッドがあります。このメソッドはコマンド・ハンドラーに関連付けられているフレームワーク・コマンドをユーザーが実行すると常に呼び出されます。

フィルターはコマンドに関連付けられないため、uExecuteメソッドを持っていません。フィルターはユーザー・インターフェースを表示するのみで、ユーザーが動作を指示するのを待ちます (例:検索ボタンをクリックする)。

すべてのコマンド・ハンドラーおよび VLF-ONE フィルターにはオプションの再定義可能メソッド uActivate があり、これはユーザーがこのコマンド・ハンドラーまたはフィルターを再表示 (つまりアクティベート) した時に実行されます。

このメソッドは滅多に利用されるものではなく、特殊です。使用する前にこのメソッドの目的やタイミングをしっかり理解するようにしてください。

six

ほとんどのフィルターとコマンド・ハンドラーは、それぞれに独自のイベント処理ルーチン (EvtRoutine/EndRoutine コマンド・ペア) とメソッドルーチン (Mthroutine/EndRoutine) コマンド・ペアを持っています。このサンプルでは#Save_Button and #Transfer_Buttonという2つのボタンの「クリック」イベント・ルーチンを示します。これらのルーチンのロジックはそれぞれのボタンをユーザーがクリックしたときに起こることを定義します。

フレームワークがいつ、どこで、どのようにフィルターやコマンド・ハンドラーが作成されるか管理することを除けば、VLF フィルターやコマンド・ハンドラーを書くことは、他の Visual LANSA の再利用可能なビジュアル・パーツを書くことと全く同じです。