; ; HSP help manager用 HELPソースファイル ; (先頭が「;」の行はコメントとして処理されます) ; %type 内蔵命令 %ver 3.0 %note ver3.0標準命令 %date 2004/10/12 %author onitama %url http://www.onionsoft.net/ %index button ボタン表示 %group オブジェクト制御命令 %prm goto/gosub "name",*label "name" : ボタンの名前 *label : 押した時にジャンプするラベル名 %inst カレントポジションにオブジェクトとして押しボタンを配置します。 ボタンには、"name"で指定された文字列が書かれ、マウスでボタンをクリック すると、*labelで指定した場所にプログラムの制御が移ります。 ^ button gotoと記述した場合は、ラベルにジャンプ。button gosubと記述した 場合は、 ラベルにサブルーチンジャンプを行ないます。goto、gosubキーワー ドを省略した場合には、gotoと同じ動作になります。 ^p 例 : button gosub "ボタン",*aaa ; *aaaを呼び出すボタンを作成 ^p ^ オブジェクトの大きさはobjsize命令で指定することができます。 ボタンを配 置すると、カレントポジションは次の行に自動的に移動します。 %href objsize %index chkbox チェックボックス表示 %group オブジェクト制御命令 %prm "strings",p1 "strings" : チェックボックスの内容表示文字列 p1=変数 : チェックボックスの状態を保持する変数 %inst カレントポジションにオブジェクトとしてチェックボックスを配置します。 チェックボックスには、"strings"で指定した文字列の左側に、カーソルで ON/OFFを切り替えることのできるスイッチがついたオブジェクトです。 ^ チェックボックスの大きさは、 objsizeで指定されたサイズになり背景はグレ ーです。 ^ p1で指定された数値型変数の内容が0ならばチェックはOFFになり、 1ならばON になります。チェックのON/OFFが変更されると、変数の内容も同時に変化しま す。 %href objsize %index clrobj オブジェクトをクリア %group オブジェクト制御命令 %prm p1,p2 p1=0〜(0) : 消去するオブジェクトID(開始) p2=0〜(-1) : 消去するオブジェクトID(終了)( -1の場合は、 最終のIDが指定 されます ) %inst button命令やmesbox命令などで出したオブジェクトを消去します。 ^ p1,p2を省略して、 clrobjだけを実行させると画面上のオブジェクトがすべて 消去されます。一部のオブジェクトだけを消去したい場合は、p1に最初のID、 p2に最後のIDを指定すればp1〜p2までのオブジェクトだけが消去されます。指 定するオブジェクトIDは、 objprm命令などで指定するIDと同じものです。 ^ 削除されたオブジェクトのIDは、新しくオブジェクトを配置す際には再利用さ れます。 %index combox コンボボックス表示 %group オブジェクト制御命令 %prm p1,p2,p3 p1=変数 : コンボボックスの状態を保持する数値型変数 p2=0〜(100) : 拡張Yサイズ p3="strings" : コンボボックスの内容を示す文字列 %inst カレントポジションにオブジェクトとして、コンボボックスを配置します。 コンボボックスは、複数の文字列要素の中から1つを選択させることのできる 入力オブジェクトです。 オブジェクトの大きさは、objsize命令で設定した大きさになります。ただし、 p2パラメータで選択時のリスト表示のためのYサイズを指定しなければなりま せん。 (通常は100〜150程度が適当です) ^ 「\n」で区切った文字列をp3で指定することで、選択する要素を設定すること ができます。 たとえば、「APPLE\nORANGE\nGRAPE」という文字列を指定すると、 「APPLE」 「ORANGE」「GRAPE」 の中から1つを選択するコンボボックスになります。 それぞれの要素には、0から順番にインデックス番号がついています。 前の例 では、「APPLE」は インデックス0、「ORANGE」はインデックス1、「GRAPE」はインデックス2とい うふうに番号がついていきます。 ^ この「\n」で区切るというデータ形式は、メモリノートパッド命令で扱う複数 行テキストデータと同じです。メモリノートパッド命令で作成したデータをそ のままcombox命令にも使用できます。 ^ ユーザーが選択をすると、p1で指定した数値型変数にインデックス番号が代入 されます。 最初にコンボボックスが配置される際には、p1で設定した変数が示すインデッ クスが選ばれた状態になります。 (インデックス番号が-1の時は非選択の状態 になります) %href objsize %sample a=0:objsize 120,24 combox a,120,"APPLE\nORANGE\nGRAPE" stop %index input 入力ボックス表示 %group オブジェクト制御命令 %prm p1,p2,p3,p4 p1=変数 : 入力のための変数 p2,p3 : メッセージボックスのサイズ(ドット単位) p4=0〜 : 入力できる最大文字数 %inst カレントポジションにオブジェクトとして入力ボックスを配置します。 p2,p3 で大きさを指定して、場所はカレントポジションからになります。 p2,p3が省 略された場合は、objsizeで指定されたサイズになります。 ^ 入力ボックスは、キーボードから直接入力することのできる小さな窓です。マ ウスで入力ボックスをクリックしてカーソルを出した状態で、キーボードから パラメータを入力することができるようになります。入力した値は、p1で指定 した変数に代入されます。もし、p1の変数が文字列型だった場合には入力した 文字列が、数値型だった場合には入力した値がそのまま変数に反映されます。 ^ 入力ボックスは初期状態では、p1で指定した変数に代入されていた値が、ボッ クス内に表示されます。 ^ p4で、入力できる最大文字数を指定することができます。p4が省略された場合 には、p1で指定された変数に格納できる最大文字数が自動的に割り当てられます。 (変数が文字列型以外だった場合はデフォルトで32文字までとなります。) p4を0に指定した場合は、そのバージョンのWindowsで扱える最大文字数が 入力可能になります。 ^ 入力ボックスを配置すると、カレントポジションは次の行に自動的に移動します。 %href mesbox objsize %index listbox リストボックス表示 %group オブジェクト制御命令 %prm p1,p2,p3 p1=変数 : リストボックスの状態を保持する数値型変数 p2=0〜(100) : 拡張Yサイズ p3="strings" : リストボックスの内容を示す文字列 %inst カレントポジションにオブジェクトとして、リストボックスを配置します。 リストボックスは、複数の文字列要素の中から1つを選択させることのできる 入力オブジェクトです。 オブジェクトの大きさは、objsize命令で設定した大きさになります。ただし、 p2パラメータで選択時のリスト表示のためのYサイズを指定しなければなりま せん。 (通常は100〜150程度が適当です) ^ 「\n」で区切った文字列をp3で指定することで、選択する要素を設定すること ができます。 たとえば、「APPLE\nORANGE\nGRAPE」という文字列を指定すると、 「APPLE」 「ORANGE」「GRAPE」の中から1つを選択するリストボックスになります。 それぞれの要素には、0から順番にインデックス番号がついています。 前の例 では、「APPLE」はインデックス0、「ORANGE」はインデックス1、「GRAPE」は インデックス2というふうに番号がついていきます。 ^ この「\n」で区切るというデータ形式は、メモリノートパッド命令で扱う複数 行テキストデータと同じです。メモリノートパッド命令で作成したデータをそ のままlistbox命令にも使用できます。 ^ ユーザーが選択をすると、p1で指定した数値型変数にインデックス番号が代入 されます。 最初にリストボックスが配置される際には、p1で設定した変数が示すインデッ クスが選ばれた状態になります。 (インデックス番号が-1の時は非選択の状態 になります) %href objsize %sample a=0:objsize 120,24 listbox a,120,"APPLE\nORANGE\nGRAPE" stop %index mesbox メッセージボックス表示 %group オブジェクト制御命令 %prm p1,p2,p3,p4,p5 p1=変数 : 表示メッセージが代入された文字列型変数 p2,p3 : メッセージボックスのサイズ(ドット単位) p4=0〜(1) : メッセージボックスのスタイル p5=0〜(-1) : 入力できる最大文字数 %inst ウィンドウ上にオブジェクトとして、 メッセージボックス(メッセージ表示用 の窓)を配置します。p2,p3で大きさを指定して、場所はカレントポジションか らになります。 メッセージボックスのスタイルに設定する値(p4)は、以下の通りになります。 ^p 値 : 対応するキー --------------------------------------------------------------- 0 : スクロール可能なエディットボックス(書き換え不可) 1 : スクロール可能なエディットボックス(書き換え可能) 4 : 横スクロールバー付きエディットボックス(書き換え不可) 5 : 横スクロールバー付きエディットボックス(書き換え可能) ^p 書き換え可能なエディットボックスを作成すると、ユーザーが好きに文字を入 力できる簡単なテキストエディタになります。 ^ p5で、入力できる最大文字数を指定することができます。 p5が0の場合は、そのバージョンのWindowsで扱える最大文字数になります。 p5が省略されるかマイナス値の場合には、p1で指定された変数に格納できる 最大文字数が自動的に割り当てられます。 %href input %index objprm オブジェクトの内容を変更 %group オブジェクト制御命令 %prm p1,p2 p1=0〜(0) : オブジェクトID指定 p2 : 変更するパラメータの内容 %inst button命令やinput,mesbox命令などで画面上に配置したオブジェクトの持つ内 容やパラメータを変更します。 ^ p1には、オブジェクトIDを指定します。オブジェクトIDは、 0から順番に画面 上に表示したオブジェクト1つ1つに割り当てられていく番号です。 オブジェクトIDは、オブジェクトを配置する命令実行後にシステム変数statに 代入されています(通常置いた順番に0,1,2…の番号が割り当てられます)。 ^ ここで指定されたオブジェクトをp2で指定したパラメータで変更します。 p2で指定するパラメータはオブジェクトの種類によって異なります。オブジェ クトによって、文字列を指定するものや、数値を指定するものが分かれていま す。詳細は下の表を参照してください。 ^p オブジェクト : p2の指定 ---------------------------------------------------------- ボタン : ボタン文字列の変更(文字列) 入力ボックス(数値) : 入力内容の変更(数値) 入力ボックス(文字列) : 入力内容の変更(文字列) チェックボックス : チェックのON/OFF(数値) コンボボックス : コンボボックスの内容変更(文字列) リストボックス : リストボックスの内容変更(文字列) ^p たとえば、チェックボックスを示すIDを指定してから、p2のパラメータに1を 指定 すると、チェックボックスを強制的にONの状態に変更します。この場合、チェ ックボックスの内容を保持する変数の値も自動的に書き換えられます。 ^ 入力ボックスの内容を変更した場合には、自動的に入力ボックスに入力フォー カスが設定され、ボックス内にカーソルが表示されます。 %href button input mesbox chkbox listbox combox %index objsize オブジェクトサイズ設定 %group オブジェクト制御命令 %prm p1,p2,p3 p1=0〜(64) : オブジェクトのX方向のサイズ(ドット単位) p2=0〜(24) : オブジェクトのY方向のサイズ(ドット単位) p3=0〜(0) : Y方向の最低確保行サイズ (ドット単位) %inst ボタンや入力ボックスなどを配置する時のオブジェクトの大きさを設定します。 ^ p3でボタンやメッセージが置かれた後にカレントポジションが移動する最低量 を指定することができます。これにより、ボタンとメッセージを連続して置い た時に同じ大きさでスペースが空くようになります。 ^ 画面がクリアされると、オブジェクトサイズは自動的にデフォルトに戻ります。 %href button chkbox combox input listbox %index objsel オブジェクトに入力フォーカスを設定 %group オブジェクト制御命令 %prm p1 p1=0〜(0) : オブジェクトID指定 %inst p1で指定したオブジェクトIDに入力フォーカスを合わせます。 入力フォーカスを合わせることにより、 mesbox命令やinput命令で配置した入 力ボックスの中に入力カーソル(キャレット)を出すことができます。この命令 は、複数の入力ボックスで任意の場所に入力フォーカスを合わせたい場合や、 次の入力ボックスにキー入力などで移動するような処理を行なうためのもので す。また、p1に-1を指定した場合は、現在、入力フォーカスが合っているオブ ジェクトIDをシステム変数statに代入します。 %index objmode オブジェクトモード設定 %group オブジェクト制御命令 %prm p1,p2 p1=0〜(0) : オブジェクトフォント設定モード指定 p2=0〜1 : フォーカス移動キー指定(0=OFF/1=ON) %inst button,input,mesbox などのオブジェクト制御命令で使用されるスタイル等を 設定するための命令です。 p1でフォント設定及び、スタイルに関するモードを指定することができます。 これにより、以降のオブジェクト配置命令実行時のスタイル設定が変わります。 モードの値と内容は以下の通りです。 ^p p1 : モード ------------------------------------------------------------ 0 : HSP標準フォントを使用 1 : デフォルトGUIフォントを使用 2 : font命令で選択されているフォントを使用 ^p ウィンドウが初期化された直後は、モード1に設定されています。 ^ モード2に変更した場合は、 font命令で指定したフォントが使われるようにな ります。これは、オブジェクト制御命令が実行される時点で、設定されている フォントが使用されます。 objmode命令が実行された時点のフォントではない ので注意してください。 ^ p2で、[TAB]キーによるオブジェクトのフォーカス移動モードの ON/OFFを行な います。 p2を1に指定した場合は、表示されているオブジェクトの入力フォー カスを[TAB]キーで移動することができます。 p2のモード指定を省略した場合は、以前のモードを引き継ぎます。 ^p p2 : モード -------------------------------------------------------------- 0 : [TAB]を無効にする 1 : [TAB]キーによるオブジェクトのフォーカス移動可能(標準) ^p %href button chkbox combox input listbox