INF_Framework は ONnoji さん作成のフリーのライブラリです。
フォームに便利な機能を追加してくれます。

ここでは INF_Framework が適用されたフォームの便利機能を、
できるだけ簡単に利用できるように解説していきたいと思っています(?、頑張ります)。

ここで使用する ライブラリ は所定のサイト からダウンロードしてください。
※ INF_Framework 第3.3版 Rev.249 for 桐10 / 桐10s を使用しています。


スピンボタン

 「スピンボタン」とはテキストボックスの数値を増減するボタンのことです。
 スピンボタンをクリックすると、テキストボックスの数値値が増加または減小します。
 また、ボタンをマウスで押しつづけると、連続的にテキストボックスの数値値が増加または減小します。
 ※連続動作をオートリピートと呼びます。

INF_Fremework では簡単な設定でスピンボタンが使えます。

step1.増減対象のテキストを準備する( [ソース] にはひとつの項目名もしくは変数名を指定)。

step2.遠隔操作する[罫線を立体に設定したテキスト]オブジェクトを準備する(テキストオブジェクトしか動作しません)。
    オブジェクト名をルールに則って決める(詳細はページ最後の 仕様 をご覧になってください)。
    ” Up を含む任意の名称 ” + ”_ ” (アンダーバー:半角記号)+”増減対象テキストのオブジェクト名”
    ” Down を含む任意の名称 ” + ”_ ” (アンダーバー:半角記号)+”増減対象テキストのオブジェクト名”

    例) ”txtSpinUpFor_txt最大値 ” 、” txtSpinDownFor_txt最大値 ”

step3.step2で準備したテキストオブジェクトを ファミリ:famSpinButton に設定する(ファミリに登録するのは、増減対象のテキストではありません)。

以上が設定手順になります。

が、サンプルをそのままコピペして、目的に応じて設定を変更して使うと簡単です(設定はページ最後の仕様をご覧になってください)。


モダンINF_Framework、クラシックINF_Framework 共通

1. サンプルフォームの ” V10s_クラシックINF_変数受け渡し元.wfx ” を定義画面で開いてみましょう。

※ワークスペースにある スピンボタンのオブジェクトをフォーム画面上に移動させています。

 

2. 増減対象のテキスト(オブジェクト名:txt最大値) の [ソース] に 変数 &最大値 が設定されています。

2-1. 増減を操作するオブジェクトにはルールに則ってオブジェクト名が設定されています。

2-2. 設定は 刻み値:1 最小値:なし 最大値:12 キャレット位置:すべて選択 フォーカス:増減対象テキストにフォーカス移動 となっています。

2-3. 設定は 刻み値:1 最小値:1 最大値:なし キャレット位置:すべて選択 フォーカス:増減対象テキストにフォーカス移動 となっています。

※ 詳細はページ最後の 仕様 をご覧になってください。

---------------------

3. 増減対象のテキストを操作するオブジェクトは ”ファミリ:famSpinButton” に属していなくてはなりません。

サンプルフォームの ” V10s_クラシックINF_変数受け渡し元.wfx ”に
登録されているファミリです。

INF_Fremework が標準で準備している ファミリ名です。

サンプルではテキストボックスの属性からファミリ名が登録されていることがわかります。

3-1. ファミリーの登録はオブジェクト操作コマンドを使ってでもできます。

・ オブジェクト操作 @txtSpinUpFor_txt最大値オブジェクトファミリー = "famSpinButton"

・ オブジェクト操作 @txtSpinDownFor_txt最大値オブジェクトファミリー = "famSpinButton"

オブジェクト操作コマンドで設定すると、ファミリパレットの登録順序が変更された場合でも対応できます。


4. スピンボタンは設定を変えるためのものなので、数値を増減した後には
  コマンドボタン等で、変更された設定に従った ”何かのイベント等”を実行しましょう (^^♪


仕様 ( 作者ONnoji さんの旧WEBサイトより引用 )

   ■命名規則
 【増減対象テキストの指定】
 スピンボタンのオブジェクト名には、
 "Up" または "Down" どちらか一方のキーワードを含む任意の名称に引き続き、
 下線(_)と増減対象テキストのオブジェクト名を付加します。
 ※下線(_)は半角記号です。

 (例)
  ○×△Up  + "_" + テキストオブジェクト名
  ○×△Down + "_" + テキストオブジェクト名
  Up○×△  + "_" + テキストオブジェクト名
  Down○×△ + "_" + テキストオブジェクト名
  ○Up×△  + "_" + テキストオブジェクト名
  ○Down×△ + "_" + テキストオブジェクト名

 下線(_)以降を増減対象テキストオブジェクト名と見なします。

 ※増減対象テキストの[ソース]にはひとつの項目名または変数名を指定してください。
 ※配列要素はリテラルな数字で書いてください。
 ※SPNは[グループ項目]オブジェクトを対象にできません。
 ※グループ項目オブジェクトと重複した項目名は指定しないでください。

 【アップダウン属性の指定】
 アップダウン属性の指定には、
 スピンボタンのオブジェクト名の中に、
 "Up" または "Down" どちらか一方のキーワードを含む必要があります。
 キーワードは全角半角、大文字小文字を問いません。

 ※増減対象のオブジェクト名の中に含まれるキーワードは対象外です。
 ※キーワードが無い場合、スピンボタンは動作しません。
 ※"Up" と "Down" 両方のキーワードを含む場合には、 "Down"が有効です。
   
   ■カスタマイズ
 それぞれのスピンボタン:テキストごとに、
 刻み値・最小値・最大値・キャレット位置・フォーカスを任意に設定できます。

 【スピンボタン:テキストのパラメータ】
 スピンボタン:テキストのオブジェクトの、[オブジェクトの属性]の[テキスト]タブの、
 [入力ガイド]ボックスにパラメータを記述します。
 ※増減対象テキストのオブジェクトの[入力ガイド]ボックスに設定しても無効です。

 【パラメータ書式】
  [[刻み値][<,>[最小値][<,>[最大値][<,>[キャレット][<,>[フォーカス]]]]]]
  ※コンマは半角・全角でも、または読点(、)でもOKです。

 刻み値   … 任意の数値 省略時:1
 最小値   … 任意の数値 省略時:最小値なし
 最大値   … 任意の数値 省略時:最大値なし
 キャレット … "右"|"左" 省略時:すべて選択
 フォーカス … "しない"  省略時:増減対象テキストにフォーカス移動

 (記述例)
  2       … 刻み値を 2 にする
  ,-50      … 最小値 -50 を超えてダウンしない
  ,, 100    … 最大値 100 を超えてアップしない
  ,,,右    … キャレットを 右 にセットする
  ,,,左    … キャレットを 左 にセットする
  ,,,,しない … テキストボックスへフォーカスを設定しない

 ※刻み値に負の値を指定しても絶対値として扱います。
 ※Up属性のスピンボタンの場合には最小値指定は無視されます。
 ※Down属性のスピンボタンの場合には最大値指定は無視されます。

 【値チェックに関するご注意】
 最小値と最大値はスピンボタンのリミッターですが、テキストボックスの値範囲(レンジ)ではありません。
 テキストボックスの値範囲(レンジ)は、自作の入力チェック手続き等で対応してください。
   
   ■ファミリ
 <スピンボタン:テキスト>はファミリ:famSpinButton に属している必要があります。