オートINF_Framework_MkII から モダンINF_Framework_MkII を生成する。
ここでは INF_Framework が適用されたフォームの便利機能を、
できるだけ簡単に利用できるように解説していきたいと思っています(?、頑張ります)。
ここで使用する ライブラリ は所定のサイト からダウンロードしてください。
※ INF_カード 第1.0版 for 桐9-2012 / 桐9s / 桐10 / 桐10s ( INF_Card_Final.zip です )
※ INF Framework 第3.3版 MkII Rev.254 が含まれます。
※ Rev.254 は INF_Framework 第3.3版 Rev.249 for 桐10 /
桐10s の上位バージョンになります。
オートINF_Framework_MkII で作成するフォームを、”指定した 表 ” の専用とする手順を紹介します。
※ | オートINF_Framework_MkII.wfx の便利な機能を使いながら、新たなプログラムを追加できるようになります。 |
” 指定した 表 ” 専用ですので、オートではなく モダンINF_Framework_MkII となります(クラシックINF_Framework に対しての名称です)。 |
またグループ項目を設定する場合の方法もご案内します。
事前準備
新たなフォルダに(作成してください。ここでは Modern_INF_Framework_MkII としてみました)
ダウンロードしたファイルから次の10個のファイルを複写してください(下図
左側に表示されているファイルです)。
そして 3個のファイル名を "モダンINF_Framework_MkII" に変更します。
※ | オートINF_Framework_MkII を利用するために最小限必要なファイルは |
フレームワーク の ” INF_Framework.cmx , IPS_Framework.cmx , INF_LNC.kex ,
INF_LNC.wfx , INF_MNU.kex , INF_MNU.wfx ” の6ファイルと ” V10s_オートINF_Framework_MkII.wfx , V10s_オートINF_Framework_MkII.kex ”( 既存ファイル名 の場合 )、 そして 第3.3版 Rev.249 から追加された ” IPS_MV2LBX.wfx ,IPS_MV2LBX.kex” さらに 第3.3版 MkII Rev.254 で追加された”INF_DispCondSave.wfx , INF_DispCondSave.kex ”を合わせた12ファイルになります。 |
|
※ | モダンINF_Framework_MkII は、オートINF_Framework_MkII の12ファイルの他に、専用にする ”表”ファイル が必要になります。 |
1.フォーム ”モダンINF_Framework_MkII.wfx” を再定義で開いて、オブジェクトの属性を変更します。
1-1.イベントファイル名と、編集対象表を次のように変更します。
1-2.以上のように設定を変更するだけで、ご自分が作成するプログラムを追加できるようになります。
◎ | オートINF_Framework_MkII を ”指定した 表 ” 専用とすることで モダンINF_Framework_MkII になります。 |
雛形となる モダンINF_Framework_MkII のフォームとイベントのファイルを準備しておいて コピー&リネーム して フォームの再定義でイベントファイル名と編集対象表を設定すれば 簡単に INF_Framework の便利機能が使え、更にご自分が作成するプログラムを追加できるフォームができあがります。 |
|
※ 新しいフォームとイベントのファイル名は ” 指定した 表 ” と同じ名称をお勧めします。 |
2.フォームに準備されているコマンドボタン等について
不要なボタンはワークス―ペースに移動させておきます(原則として削除しないようにしてください)。
また は現在のエリア外には出さないようにしてください(使用時には表示されません)。
3.グループ項目の設定
モダンINF_Framework_MkII は オートINF_Framework_MkII を任意の表専用にしたものです。
実際の動作は オートINF_Framework_MkII と変わらず起動のたびに明細部の項目が自動設定されています。
デフォルトのままグループ項目を設定をするとグループ項目にしたソースも明細部に表示されます。
そこでグループ項目に指定したソースを明細部に表示させないようにする、には イベントを次のように設定します。
以下のサンプルでは61行目の **変数宣言 局所,整数 { &ONEmGroupObjectSeek = 1 }の行を 241行目に複写し (**-- <end 標準 INF Framework 第3.3版 名札 メイン> --** の後に複写するということです) 複写した行の先頭のアスタリスク記号( * )を取り除いて有効にします。 |
なお、コメント行になっている61行目を有効にしても同じ結果になりますが、
INF_Framework のバージョンアップによって[標準 INF_Framework 第?.?版 名札
メイン]を差し替える際には、
34行目 ― **-- <begin 標準 INF Framework 第3.3版 名札 メイン> --** から 239行目 ― **-- <end 標準 INF Framework 第3.3版 名札 メイン> --** |
の範囲を置き換えることになります。
※つまり61行目を有効にしていたのに、既存値のコメント行に置き換わってしまいます(リセット)。
置き換える範囲外( ここでは
241行目 )に複写にしておけばユーザーの設定が置き換わることがありません。
以上の手順で
グループ項目に設定した、[性別] の項目が明細部から除かれます。
※以下の例ではグループ操作バーを上に表示させてみました。
<ヒント>
フォーム起動時に以下の 手続き を実行するようにしておくと地味に便利です (^^♪
手続き定義開始 cmdStartupClick( ) |
* 変数宣言 自動,文字列{ &icon, &title = "cmdStartupClick( )", &msg } |
変数宣言 自動,数値 { &formWidth } |
変数宣言 自動,文字列{ &formObjectName = #半角( "フォーム" ) } |
条件 ( #変数( "INFmKnjForm" ) ) &formObjectName = #全角( &formObjectName ) |
** 幅を狭くしてフォームスクロールバーが現れ難くする |
オブジェクト操作 &formObjectName{ &formWidth = フォームの幅 } |
&formWidth = #int( &formWidth / 4 ) |
オブジェクト操作 &formObjectName{ フォームの幅 = &formWidth } |
オブジェクト操作 &formObjectName{ &EZWmWfmWidth = フォームの幅 } |
手続き定義終了 |