mod_GUIObj 説明
< 概要 >
HSPからGUI部品を手軽に利用するために作られたモジュールです。
< 注意 >
HSPランタイム起動後、初めて本モジュールを利用する前に初期化が必要です。
「MGO_init」コマンドで初期化を行ってください。
< オブジェクトID >
各オブジェクトには互いの識別のために値が割り振られます。この値をオブジェクトIDと良います。
ただし、HSPが管理するオブジェクトIDとは独立したものです。
IDは0以上の整数値です。
新たにオブジェクトを作成する際は、空きIDのうちで最も若いものがそのオブジェクトのIDとして採用されます。
< 機能 >
□< 水平スライダ >
枠無しウィンドウを2つ使って水平スライダを作成します。
最大500個まで管理できます。・設置
・削除
・つまみの位置を取得
・つまみの位置を設定
・つまみの動く単位を設定
・装飾を設定
・有効化・無効化
・表示・非表示
・スライダ本体の位置の変更
・内部情報の取得□< 垂直スライダ >
枠無しウィンドウを2つ使って垂直スライダを作成します。
最大500個まで管理できます。・設置
・削除
・つまみの位置を取得
・つまみの位置を設定
・つまみの動く単位を設定
・装飾を設定
・有効化・無効化
・表示・非表示
・スライダ本体の位置の変更
・内部情報の取得□< 水平スクロールバー >
枠無しウィンドウを一つ使って水平スクロールバーを作成します。
最大で500個まで管理できます。・設置
・削除
・つまみの位置を取得
・つまみの位置を設定
・つまみの動く単位を設定
・つまみの長さを変更
・スクロールバーのレールの長さを変更
・装飾を設定
・有効化・無効化
・表示・非表示
・本体の位置の変更
・内部情報の取得□< 垂直スクロールバー >
枠無しウィンドウを一つ使って垂直スクロールバーを作成します。
最大で500個まで管理できます。・設置
・削除
・つまみの位置を取得
・つまみの位置を設定
・つまみの長さを変更
・つまみの動く単位を設定
・スクロールバーのレールの長さを変更
・装飾を設定
・有効化・無効化
・表示・非表示
・本体の位置の変更
・内部情報の取得
□< ステータスバー >
枠無しウィンドウを一つ使ってステータスバーを作成します。
最大で100個まで管理できます。
ただし、ウィンドウサイズの変更に反応して自動で長さや位置が変わったりはしないので、ユーザー側でコマンドを送る必要があります。
そのかわり普通のステータスバーと違い、どこでも好きな位置に、いくつでも設置できます。・設置
・削除
・位置の変更
・長さの変更
・全体の外観の設定
・部屋の数を設定
・部屋の外観の設定
・メッセージの設定
・表示・非表示
・内部情報の取得
□< プルダウンメニュー >
枠無しウィンドウを2つ使ってプルダウンメニューを作ります。
サブメニューはサポートされていません。
最大で100個まで設置でき、メニュー1つあたり、最大100アイテムまで保持できます。・設置
・削除
・位置の変更
・装飾の変更
・アイテムのメッセージの変更
・フォーカス移動用のキーコードの割り当て
・アイテムの有効/無効の設定
・全体の有効/無効
・表示/非表示
・内部情報の取得
□< チェックボックス >
枠無しウィンドウを一つ使ってチェックボックスを作ります。
最大で500個まで管理できます。
ところで、チェックボックスとトグルボタンの挙動はほぼ同じです。本モジュールでは両者を区別していません。
従って、
チェックボックス風の画像を使えばチェックボックスに、
トグルボタン風の画像を使えばトグルボタンとして使用できます。・設置
・削除
・位置の変更
・ON/OFFの取得
・ON/OFFの設定
・有効/無効の設定
・表示/非表示の設定
・内部情報の取得□< ラジオボタン >
枠無しウィンドウを1つ使ってラジオボタンを作ります。
最大で500個まで管理できます。
ところで、ラジオボタンとラジオトグルボタンの挙動はほぼ同じです。本モジュールでは両者を区別していません。
従って、
ラジオボタン風の画像を使えばチェックボックスに、
ラジオトグルボタン風の画像を使えばラジオトグルボタンとして使用できます。・設置
・削除
・位置の変更
・選択状態の取得
・選択状態の設定
・有効/無効の設定
・表示/非表示の設定
・内部情報の取得□< ポップアップメニュー >
枠無しウィンドウを1つ使ってポップアップメニューを作ります。
コマンドにより任意の位置に出現させることができます。
最大で100個まで作れます。メニュー1つあたり、最大100アイテムまで保持できます。・作成
・削除
・開閉
・装飾の変更
・アイテムのメッセージの変更
・フォーカス移動用のキーコードの割り当て
・アイテムの有効・無効の設定
・内部情報の取得
< 命令・関数 >
□< 水平スライダ >
命令・関数名
説明
現在の操作先ウィンドウの、pos命令で指定されている位置に水平スライダを設置します。
つまみの位置は0〜1で表されます。0が左端、1が右端です。
設置直後は0になっています。[ 書式 ]
MGO_SetHSlider array1,array2,label1
array1 : 設定用変数1
array2 : 設定用変数2
label1 : つまみの位置が変化する度にジャンプするラベルの情報を格納したラベル型変数< 設定用変数1 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) レールとして使用するウィンドウのウィンドウID (1) つまみとして使用するウィンドウのウィンドウID (2),(3) レールのx,yサイズ (4),(5) つまみのx,yサイズ <設定用変数2 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) 素材画像のあるウィンドウID (1),(2) レール用画像の左上x,y座標 (3),(4) ノーマル状態のつまみ用画像の左上x,y座標 (5),(6) マウスオーバー状態の〃 (7),(8) つままれた状態の〃
無事に設置できた場合は、設置された水平スライダのIDがstatに格納されます。
それ以外の場合は-1になります。つまみが動かされる度に label1 で指定されたサブルーチンにジャンプしますが、その際、動かされているスライダのIDが「num1_public@GUIOBJ_13」変数に保存され ています。
水平スライダを削除します。 [ 書式 ]
MGO_DelHSlider P1
P1 : スライダのID
無事に削除できた場合はstatの値が0に、そうでない場合は1になります。
MGO_GetControlPos_HSlider 水平スライダのつまみの位置を取得します。
[ 書式 ]
val = MGO_GetControlPos_HSlider(P1)
P1 : スライダのID
取得に失敗した場合は-1.0が返ります。
MGO_SetControlPos_HSlider 水平スライダのつまみの位置を設定します。
[ 書式 ]
MGO_SetControlPos_HSlider P1,P2
P1 : スライダのID
P2 : 位置(0〜1)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetΔx_HSlider 水平スライダのつまみの動く単位を設定します。 [ 書式 ]
MGO_SetΔx_HSlider P1,P2,P3,P4
P1 : スライダのID
P2 : レールのクリック時につまみが動く単位(0〜1)
P3 : 矢印キー入力によりつまみが動く単位(0〜1)
P4 : マウスホイールの回転の一刻みでつまみが動く単位(0〜1)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetDecorationHSlider 水平スライダの装飾を設定します。 [ 書式 ]
MGO_SetDecorationHSlider P1 ,array1
P1 : スライダのID
array1 : 設定用変数< 設定用変数 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) 素材画像のあるウィンドウID (1),(2) レール用画像の左上x,y座標 (3),(4) ノーマル状態のつまみ用画像の左上x,y座標 (5),(6) マウスオーバー状態の〃 (7),(8) つままれた状態の〃 無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableOrNot_HSlider 水平スライダを有効化/無効化します。 [ 書式 ]
MGO_EnableOrNot_HSlider P1,P2
P1 : スライダのID
P2 : オプション(0,1)=(無効化,有効化)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_HSlider 水平スライダを表示/非表示状態にします。 [ 書式 ]
MGO_VisibleOrNot_HSlider P1,P2
P1 : スライダのID
P2 : オプション(0,1)=(非表示,表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChPos_HSlider 水平スライダ本体の位置を変更します。 [ 書式 ]
MGO_ChPos_HSlider P1 ,P2,P3
P1 : スライダのID
P2,P3 : レールの新しい座標(親ウィンドウ基準)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_HSlider 水平スライダの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_HSlider P1 ,array1 ,array2 ,array3
P1 : スライダのID
array1 : 結果1を格納する変数
array2 : 結果2を格納する変数
array3 : 結果3を格納する変数< array1 >
整数型配列で、各要素に保存される値は次の通りです。
(0),(1) レールのx,yサイズ (2),(3) つまみのx,yサイズ (4),(5) レールの左上x,y座標(親ウィンドウ基準) (6),(7) つまみの左上x,y座標(親ウィンドウ基準) (8) レールのウィンドウハンドル (9) つまみのウィンドウハンドル (10) 有効・無効 (0,1)=(無効,有効) (11) 表示・非表示 (0,1)=(非表示表示) (12) マウスオーバーか否か (0,1)=(否,可) (13) レールのウィンドウID (14) つまみのウィンドウID < array2 >
整数型配列で、各要素に保存される値は次の通りです。
(0) つまみの位置(0〜1) (1) レールのクリック時につまみが動く単位(0〜1) (2) 矢印キー入力によりつまみが動く単位(0〜1) (3) マウスホイールの回転の一刻みでつまみが動く単位(0〜1) < array3 >
ラベル型配列で、各要素に保存される値は次の通りです。
(0) つまみが掴まれた時にジャンプするラベル (1) レールが掴まれた時にジャンプするラベル (2) つまみ/レールに対するキー入力に反応してジャンプするラベル (3) つまみの位置が変化する度にジャンプするラベル
無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
現在の操作先ウィンドウの、pos命令で指定されている位置に垂直スライダを設置します。
つまみの位置は0〜1で表されます。0が上端、,1が下端です。
設置直後は0になっています。[ 書式 ]
MGO_SetVSlider array1,array2,label1
array1 : 設定用変数1
array2 : 設定用変数2
label1 : つまみの位置が変化する度にジャンプするラベルの情報を格納したラベル型変数< 設定用変数1 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) レールとして使用するウィンドウのウィンドウID (1) つまみとして使用するウィンドウのウィンドウID (2),(3) レールのx,yサイズ (4),(5) つまみのx,yサイズ <設定用変数2 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) 素材画像のあるウィンドウID (1),(2) レール用画像の左上x,y座標 (3),(4) ノーマル状態のつまみ用画像の左上x,y座標 (5),(6) マウスオーバー状態の〃 (7),(8) つままれた状態の〃
無事に設置できた場合は、設置された垂直スライダのIDがstatに格納されます。
それ以外の場合は-1になります。つまみが動かされる度に label1 で指定されたサブルーチンにジャンプしますが、その際、動かされているスライダのIDが「num1_public@GUIOBJ_33」という変数に保存されています。
MGO_DelVSlider 垂直スライダを削除します。 [ 書式 ]
MGO_DelVSlider P1
P1 : スライダのID
無事に削除できた場合はstatの値が0に、そうでない場合は1になります。
MGO_GetControlPos_VSlider 垂直スライダのつまみの位置を取得します。
[ 書式 ]
val = MGO_GetControlPos_VSlider(P1)
P1 : スライダのID
取得に失敗した場合は-1.0が返ります。
MGO_SetControlPos_VSlider 垂直スライダのつまみの位置を設定します。
[ 書式 ]
MGO_SetControlPos_VSlider P1,P2
P1 : スライダのID
P2 : 位置(0〜1)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetΔy_VSlider 垂直スライダのつまみの動く単位を設定します。 [ 書式 ]
MGO_SetΔy_VSlider P1,P2,P3,P4
P1 : スライダのID
P2 : レールのクリック時につまみが動く単位(0〜1)
P3 : 矢印キー入力によりつまみが動く単位(0〜1)
P4 : マウスホイールの回転の一刻みでつまみが動く単位(0〜1)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetDecorationVSlider 垂直スライダの装飾を設定します。 [ 書式 ]
MGO_SetDecorationVSlider P1 ,array1
P1 : スライダのID
array1 : 設定用変数< 設定用変数 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) 素材画像のあるウィンドウID (1),(2) レール用画像の左上x,y座標 (3),(4) ノーマル状態のつまみ用画像の左上x,y座標 (5),(6) マウスオーバー状態の〃 (7),(8) つままれた状態の〃 無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableOrNot_VSlider 垂直スライダを有効化/無効化します。 [ 書式 ]
MGO_EnableOrNot_VSlider P1,P2
P1 : スライダのID
P2 : オプション(0,1)=(無効化,有効化)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_VSlider 垂直スライダを表示/非表示状態にします。 [ 書式 ]
MGO_VisibleOrNot_VSlider P1,P2
P1 : スライダのID
P2 : オプション(0,1)=(非表示,表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChPos_VSlider 垂直スライダ本体の位置を変更します。 [ 書式 ]
MGO_ChPos_VSlider P1 ,P2,P3
P1 : スライダのID
P2,P3 : レールの新しい座標(親ウィンドウ基準)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_VSlider 垂直スライダの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_VSlider P1 ,array1 ,array2 ,array3
P1 : スライダのID
array1 : 結果1を格納する変数
array2 : 結果2を格納する変数
array3 : 結果3を格納する変数< array1 >
整数型配列で、各要素に保存される値は次の通りです。
(0),(1) レールのx,yサイズ (2),(3) つまみのx,yサイズ (4),(5) レールの左上x,y座標(親ウィンドウ基準) (6),(7) つまみの左上x,y座標(親ウィンドウ基準) (8) レールのウィンドウハンドル (9) つまみのウィンドウハンドル (10) 有効・無効 (0,1)=(無効,有効) (11) 表示・非表示 (0,1)=(非表示,表示) (12) マウスオーバーか否か (0,1)=(否,可) (13) レールのウィンドウID (14) つまみのウィンドウID < array2 >
整数型配列で、各要素に保存される値は次の通りです。
(0) つまみの位置(0〜1) (1) レールのクリック時につまみが動く単位(0〜1) (2) 矢印キー入力によりつまみが動く単位(0〜1) (3) マウスホイールの回転の一刻みでつまみが動く単位(0〜1) < array3 >
ラベル型配列で、各要素に保存される値は次の通りです。
(0) つまみが掴まれた時にジャンプするラベル (1) レールが掴まれた時にジャンプするラベル (2) つまみ/レールに対するキー入力に反応してジャンプするラベル (3) つまみの位置が変化する度にジャンプするラベル 無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetHScrollBar 現在の操作先ウィンドウの、pos命令で指定されている位置に 水平スクロールバーを設置します。
つまみの位置は0〜1で表されます。0が左端、1が右端です。
設置直後は0になっています。[ 書式 ]
MGO_SetHScrollBar array1,array2,label1
array1 : 設定用変数1
array2 : 設定用変数2
label1 : つまみの位置が変化する度にジャンプするラベルの情報を格納したラベル型変数< 設定用変数1 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) スクロールバーとして使用するウィンドウのウィンドウID (1),(2) レールのx,yサイズ (3) つまみのxサイズ(9以上、レールの長さ以下) (4) レールの最大確保xサイズ (ここで指定した長さ以上に、後で引き伸ばすことはできません) < 設定用変数2 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) 素材画像の存在するウィンドウID (1),(2) 「←」アロー用画像セットの左上x,y座標 (3),(4) 「→」アロー用画像セットの左上x,y座標 (5),(6) レール用画像の左上x,y座標 (7),(8) つまみ用画像セットの左上x,y座標 (9) つまみの不透明度(0〜255) < アロー用画像セット (1) >
アローは正方形です。
素材画像として、左から順に「通常」,「マウスオーバー」,「つままれた」3つの状態の正方形画像を並べて用意してください。< つまみ用画像セット (1) >
つまみは3つの画像をもとに描画されます。「左端」+「中間」+「右端」です。
そしてそれぞれに「通常」,「マウスオーバー」,「つままれた」3つの状態があります。
両端の画像はx幅4pxの画像を用い、
中間の画像はx幅1pxの画像をx方向に適宜引き延ばして利用する仕様ですので、注意してください。
左から順に、「通常」,「マウスオーバー」,「つままれた」3つの状態の画像を並べてください。但し、それぞれの状態では、左から順に「左端」+「中間」+「右端」の順に並べてください。
例えば、下のような状態になります。
![]()
「レールの最大確保xサイズ」を大きめに設定しておくことで、後で「MGO_ChRailLength_HSCR」命令で長さを引き延ばすことができます。
この長さを超えての延長は不可能ですので、その場合は再初期化してください。
無事に設置できた場合は、設置された水平スクロールバーのIDがstatに格納されます。
それ以外の場合は-1になります。つまみが動かされる度に label1 で指定されたサブルーチンにジャンプしますが、その際、動かされているスクロールバーのIDが「num1_public@GUIOBJ_63」変数に保存されます。
MGO_DelHScrollBar 水平スクロールバーを削除します。 [ 書式 ]
MGO_DelHScrollbar P1
P1 : スクロールバーのID
無事に削除できた場合はstatの値が0に、そうでない場合は1になります。
MGO_GetControlPos_HScrollBar 水平スクロールバーのつまみの位置を取得します。 [ 書式 ]
val = MGO_GetControlPos_HScrollBar(P1)
P1 :スクロールバーのID
取得に失敗した場合は-1.0が返ります。
MGO_SetControlPos_HScrollBar 水平スクロールバーのつまみの位置を設定します。 [ 書式 ]
MGO_SetControlPos_HScrollBar P1,P2
P1 : スクロールバーのID
P2 : 位置(0〜1)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetΔx_HScrollBar 水平スクロールバーのつまみの動く単位を設定します。 [ 書式 ]
MGO_SetΔx_HScrollBar P1,P2,P3,P4
P1 : スクロールバーのID
P2 : アローのクリック時につまみが動く単位(0〜1)
P3 : 矢印キー入力〃
P4 : マウスホイールの回転〃無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChCtrlLength_HSCR 水平スクロールバーのつまみの長さを変更します。 [ 書式 ]
MGO_ShCtrlLength_HSCR P1,P2
P1 : スクロールバーのID
P2 : つまみの長さ(9以上、レールの長さ以下)無事に変更できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChRailLength_HSCR 水平スクロールバーのレールの長さを変更します。
※アローの大きさは変わりません。
[ 書式 ]MGO_ChRailLength_HSCR P1,P2
P1 : スクロールバーのID
P2 : レールの長さ (≧つまみの長さ)無事に変更できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetDecoration_HSCR 水平スクロールバーの装飾を設定します。 [ 書式 ]
MGO_SetDecoration_HSCR P1 ,array
P1 : スクロールバーのID
array : 設定用変数< 設定用変数 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0)
素材画像の存在するウィンドウID (1),(2) 「←」アロー用画像セットの左上x,y座標 (3),(4) 「→」アロー用画像セットの左上x,y座標 (5),(6) レール用画像の左上x,y座標 (7),(8) つまみ用画像セットの左上x,y座標 (9)
つまみの不透明度(0〜255) 無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableHScrollBar 水平スクロールバーを有効化/無効化します。 [ 書式 ]
MGO_EnableHScrollBar P1,P2
P1 : スクロールバーのID
P2 : オプション(0,1)=(無効,有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_HSCR 水平スクロールバーを表示/非表示状態にします。 [ 書式 ]
MGO_VisibleOrNot_HSCR P1,P2
P1 : スクロールバーのID
P2 : オプション(0,1)=(非表示,表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChPos_HScrollBar 水平スクロールバーの位置を変更します。 [ 書式 ]
MGO_ChPos_HScrollBar P1,P2,P3
P1 : スクロールバーのID
P2,P3 : 左上の座標無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_HSCR 水平スクロールバーの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_HSCR P1 ,array1,array2,array2
P1 : スクロールバーのID
array1 : 結果1を格納する変数
array2 : 結果2を格納する変数
array3 : 結果3を格納する変数< array1 >
整数型配列で、各要素に保存される値は次の通りです。
(0),(1) レールのx,yサイズ (2) つまみ長さ(xサイズ) (3),(4) 全体の左上x,y座標 (※親ウィンドウ基準) (5),(6) 全体の右下x,y座標 (※親ウィンドウ基準) (7) つまみの左上x座標 (※スクロールバーウィンドウ基準) (8) 右下〃 (9) 有効/無効 (0,1)=(無効,有効) (10) 表示/非表示 (0,1)=(非表示,表示) (11) マウスオーバーの状況 (0,1,2,3,4,5,6)=(非マウスオーバー,←アローがマウスオーバー,→〃,つまみ 〃,←アローが押されている,→〃,つまみ〃) (12) ウィンドウハンドル (13) ウィンドウID (14)〜(18) 未使用 (19) 素材画像の存在するウィンドウのウィンドウID (20),(21) ←アロー用画像セットの左上x,y座標 (22),(23) →アロー用画像セットの左上x,y座標 (24),(25) レール用画像の左上x,y座標 (26),(27) つまみ用画像セットの左上x,y座標 (28) つまみの不透明度 (29) レールの最大確保xサイズ < array2 >
整数型配列で、各要素に保存される値は次の通りです。
(0) つまみの位置(0〜1) (1) アローのクリック時につまみが動く単位(0〜1) (2) 矢印キー入力によりつまみが動く単位(0〜1) < array3 >
ラベル型配列で、各要素に保存される値は次の通りです。
(0) 一部が掴まれた時にジャンプするラベル (1) キー入力に反応してジャンプするラベル (2) つまみの位置が変化する度にジャンプするラベル 無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetVScrollBar 現在の操作先ウィンドウの、pos命令で指定されている位置に 垂直スクロールバーを設置します。
つまみの位置は0〜1で表されます。0が上端、1が下端です。
設置直後は0になっています。[ 書式 ]
MGO_SetVScrollBar array1,array2,label1
array1 : 設定用変数1
array2 : 設定用変数2
label1 : つまみの位置が変化する度にジャンプするラベルの情報を格納したラベル型変数< 設定用変数1 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) スクロールバーとして使用するウィンドウのウィンドウID (1),(2) レールのx,yサイズ (3) つまみのyサイズ(9以上、レールの長さ以下) (4) レールの最大確保yサイズ (ここで指定した長さ以上に、後で引き伸ばすことはできません) < 設定用変数2 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0) 素材画像の存在するウィンドウID (1),(2) 「▲」アロー用画像セットの左上x,y座標 (3),(4) 「▼」アロー用画像セットの左上x,y座標 (5),(6) レール用画像の左上x,y座標 (7),(8) つまみ用画像セットの左上x,y座標 (9) つまみの不透明度(0〜255) < アロー用画像セット (2) >
アローは正方形です。
素材画像として、左から順に「通常」,「マウスオーバー」,「つままれた」3つの状態の正方形画像を並べて用意してください。< つまみ用画像セット (2) >
つまみは3つの画像をもとに描画されます。「 上端」+「中間」+「下端」です。
そしてそれぞれに「通常」,「マウスオーバー」,「つままれた」3つの状態があります。
両端の画像はy幅4pxの画像を用い、
中間の画像はy幅1pxの画像をy方向に適宜引き延ばして利用する仕様ですので、注意してください。
左から順に、「通常」,「マウスオーバー」,「つままれた」3つの状態の画像を並べてください。但し、それぞれの状態では、上から順に「 上端」+「中間」+「下端」の順に並べてください。
例えば、下のような状態になります。
![]()
「レールの最大確保yサイズ」を大きめに設定しておくことで、後で「MGO_ChRailLength_VSCR」命令で長さを引き延ばすことができます。
この長さを超えての延長は不可能ですので、その場合は再初期化してください。
無事に設置できた場合は、設置された垂直スクロールバーのIDがstatに格納されます。
それ以外の場合は-1になります。つまみが動かされる度に label1 で指定されたサブルーチンにジャンプしますが、その際、動かされているスクロールバーのIDが「num1_public@GUIOBJ_93」変数に保存されます。
MGO_DelVScrollBar 垂直スクロールバーを削除します。 [ 書式 ]
MGO_DelVScrollbar P1
P1 : スクロールバーのID
無事に削除できた場合はstatの値が0に、そうでない場合は1になります。
MGO_GetControlPos_VScrollBar 垂直スクロールバーのつまみの位置を取得します。 [ 書式 ]
val = MGO_GetControlPos_VScrollBar(P1)
P1 :スクロールバーのID
取得に失敗した場合は-1.0が返ります。
MGO_SetControlPos_VSCrollBar 垂直スクロールバーのつまみの位置を設定します。 [ 書式 ]
MGO_SetControlPos_VScrollBar P1,P2
P1 : スクロールバーのID
P2 : 位置(0〜1)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetΔy_VSCrollBar 垂直スクロールバーのつまみの動く単位を設定します。 [ 書式 ]
MGO_SetΔy_VScrollBar P1,P2,P3,P4
P1 : スクロールバーのID
P2 : アローのクリック時につまみが動く単位(0〜1)
P3 : 矢印キー入力〃
P4 : マウスホイールの回転〃無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChCtrlLength_VSCR 垂直スクロールバーのつまみの長さを変更します。 [ 書式 ]
MGO_ShCtrlLength_VSCR P1,P2
P1 : スクロールバーのID
P2 : つまみの長さ(9以上、レールの長さ以下)無事に変更できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChRailLength_VSCR 垂直スクロールバーのレールの長さを変更します。
※アローの大きさは変わりません。
[ 書式 ]MGO_ChRailLength_VSCR P1,P2
P1 : スクロールバーのID
P2 : レールの長さ (≧つまみの長さ)無事に変更できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetDecoration_VSCR 垂直スクロールバーの装飾を設定します。 [ 書式 ]
MGO_SetDecoration_VSCR P1 ,array
P1 : スクロールバーのID
array : 設定用変数< 設定用変数 >
整数型配列で、各要素に保存すべき値は以下の通りです。
(0)
素材画像の存在するウィンドウID (1),(2) 「←」アロー用画像セットの左上x,y座標 (3),(4) 「→」アロー用画像セットの左上x,y座標 (5),(6) レール用画像の左上x,y座標 (7),(8) つまみ用画像セットの左上x,y座標 (9)
つまみの不透明度(0〜255) 無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableVSCrollBar 垂直スクロールバーを有効化/無効化します。 [ 書式 ]
MGO_EnableVScrollBar P1,P2
P1 : スクロールバーのID
P2 : オプション(0,1)=(無効,有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_VSCR 垂直スクロールバーを表示/非表示状態にします。 [ 書式 ]
MGO_VisibleOrNot_VSCR P1,P2
P1 : スクロールバーのID
P2 : オプション(0,1)=(非表示,表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChPos_VSCrollBar 垂直スクロールバーの位置を変更します。 [ 書式 ]
MGO_ChPos_VScrollBar P1,P2,P3
P1 : スクロールバーのID
P2,P3 : 左上の座標無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_VSCR 垂直スクロールバーの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_VSCR P1 ,array1,array2,array2
P1 : スクロールバーのID
array1 : 結果1を格納する変数
array2 : 結果2を格納する変数
array3 : 結果3を格納する変数< array1 >
整数型配列で、各要素に保存される値は次の通りです。
(0),(1) レールのx,yサイズ (2) つまみ長さ(yサイズ) (3),(4) 全体の左上x,y座標 (※親ウィンドウ基準) (5),(6) 全体の右下x,y座標 (※親ウィンドウ基準) (7) つまみの左上y座標 (※スクロールバーウィンドウ基準) (8) 右下〃 (9) 有効/無効 (0,1)=(無効,有効) (10) 表示/非表示 (0,1)=(非表示,表示) (11) マウスオーバーの状況 (0,1,2,3,4,5,6)=(非マウスオーバー,▲アローがマウスオーバー,▼〃,つまみ 〃,▲アローが押されている,▼〃,つまみ〃) (12) ウィンドウハンドル (13) ウィンドウID (14)〜(18) 未使用 (19) 素材画像の存在するウィンドウのウィンドウID (20),(21) ▲アロー用画像セットの左上x,y座標 (22),(23) ▼アロー用画像セットの左上x,y座標 (24),(25) レール用画像の左上x,y座標 (26),(27) つまみ用画像セットの左上x,y座標 (28) つまみの不透明度 (29) レールの最大確保yサイズ < array2 >
整数型配列で、各要素に保存される値は次の通りです。
(0) つまみの位置(0〜1) (1) アローのクリック時につまみが動く単位(0〜1) (2) 矢印キー入力によりつまみが動く単位(0〜1) < array3 >
ラベル型配列で、各要素に保存される値は次の通りです。
(0) 一部が掴まれた時にジャンプするラベル (1) キー入力に反応してジャンプするラベル (2) つまみの位置が変化する度にジャンプするラベル 無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetStatusBar 現在の操作先ウィンドウの、pos命令で指定されている位置にステータスバーを設置します。
[ 書式 ]MGO_SetStatusBar P1 ,P2,P3 ,P4
P1 : ステータスバーとして使用したいウィンドウのID
P2,P3 : 表示x,yサイズ
P4 : 最大確保xサイズ (この長さを超えて後から延長することはできません)「最大確保xサイズ」を大きめに設定しておくことで、後で「MGO_ChLength_STB」命令で延長することができます。
この長さを超えての延長は不可能ですので、その場合は再初期化してください。
無事に設置できた場合は、設置されたステータスバーのIDがstatに格納されます。
それ以外の場合は-1になります。
設置した最初の状態では外観・メッセージともに空っぽですので、設定する必要があります。
MGO_DelStatusBar ステータスバーを削除します。 [ 書式 ]
MGO_DelStatusBar P1
P1 : ステータスバーのID
無事に削除できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChPos_STB ステータスバーの位置を変更します。 [ 書式 ]
MGO_ChPos_STB P1,P2,P3
P1 : ステータスバーのID
P2,P3 : 座標無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChLength_STB ステータスバーの長さを変更します。 [ 書式 ]
MGO_ChLength_STB P1,P2
P1 : ステータスバーのID
P2 : 新しい長さ (≦最大確保xサイズ)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetWholeAppearance_STB ステータスバーの全体の外観を設定します。 [ 書式 ]
MGO_SetWholeAppearance_STB P1 ,array1 ,str
P1 : ステータスバーのID
array1 : 設定用変数
str : フォント名< array1 >
整数型配列変数で、構造は以下の通りです。
(0) 部屋の仕切り(セパレータ)の厚さ〔px〕 (1),(2),(3) 全体の背景色のR,G,B値 (4),(5),(6) セパレータの色のR,G,B値 (7) 論理フォントサイズ(文字のyサイズ) (8) 文字列の左端xオフセット (メッセージの描き始めの左端の余白) 無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetRooms_STB ステータスバーの部屋の数情報を設定します。 [ 書式 ]
MGO_SetRooms_STB P1,P2
P1 : ステータスバーのID
P2 : 部屋の数無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
※部屋の数を減らした場合でも、各部屋の以前の情報は保存されているので、部屋の数情報を元に戻すと復活できます。
MGO_SetRoomAppearance_STB ステータスバーの部屋の外観を設定します。 [ 書式 ]
MGO_SetRoomAppearance_STB P1,array1
P1 : ステータスバーのID
array1 : 設定用変数< array1 >
整数型配列変数で、構造は以下の通りです。
mは部屋番号(m=0,1,2,・・・)です。部屋の数の分だけ下の構造を繰り返してください。
(m,0) xサイズ (m,1),(m,2),(m,3) 背景色のR,G,B値 (m,4),(m,5),(m,6) 文字色のR,G,B値 < 例 >
//第一室
(0,0) = 100
(0,1) = 255 : (0,2) = 255 : (0,3) = 255
(0,4) = 0 : (0,5) = 0 : (0,6) = 0
//第二室
(1,0) = 200
(1,1) = 255 : (1,2) = 255 : (1,3) = 0
(1,4) = 0 : (1,5) = 0 : (1,6) = 255無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetMessage_STB ステータスバーに表示するメッセージを設定します。 [ 書式 ]
MGO_SetMessage_STB P1,array1
P1 : ステータスバーのID
array1 : 設定用変数< array1 >
文字列型配列変数です。
要素(m)に第m室のメッセージを格納してください。無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_STB ステータスバーを表示/非表示状態にします。 [ 書式 ]
MGO_VisibleOrNot_STB P1,P2
P1 : ステータスバーのID
P2 : オプション (0,1)=(非表示,表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_STB ステータスバーの内部情報を取得します。 [ 書式 ]
MGO_getInternalInfo_STB P1 ,array1 ,array2 ,array3
P1 : ステータスバーのID
array1,array2,array3 : 結果を格納する変数< array1 >
整数型配列変数で、構造は下のようになります。
(0),(1) x,yサイズ (2),(3) 左上x,y座標 (親ウィンドウ基準) (4) 最大確保xサイズ (5) 部屋の数 (6) セパレータの厚さ〔px〕 (7),(8),(9) セパレータの色のR,G,B値 (10) 論理フォントサイズ (11) 文字列の左端xオフセット (12) ウィンドウハンドル (13) ウィンドウID (14),(15),(16) 全体の背景色のR,G,B値 (17) 表示/非表示 (0,1)=(非表示,表示) < array2 >
整数型配列変数で、構造は下のようになります。
mは部屋番号(m=0,1,2,・・・)です。部屋の数の分だけ下の構造が繰り返されます。
(m,0) xサイズ (m,1),(m,2),(m,3) 背景色のR,G,B値 (m,4),(m,5),(m,6) 文字色のR,G,B値 < array3 >
文字列型配列変数です。要素(m)に第m室のメッセージが格納されます。
無事に取得できた場合はそのステータスバーで賞されているフォントの名がrefstrに保存されます。
それ以外の場合はrefstrに"/"が保存されます。
MGO_SetPdwnMenu 現在の操作先ウィンドウの、pos命令で指定されている位置にプルダウンメニューを設置します。 [ 書式 ]
MGO_SetPdwnMenu P1,P2 ,array1,array2 ,str1,str2 ,P3,str3,var1
P1 : ボタン(根っこの部分)にしたいウィンドウのID
P2 : メニュー板にしたいウィンドウのID
array1,2 : 設定用変数
str1 : ボタンのメッセージのフォント名
str2 : ボタンのメッセージ
P3 : ボタンのメッセージの太字フラグ
str3 : アイテムのメッセージのフォント名
var1 : アイテムが選択された時にサブルーチンジャンプするラベルを格納した変数
< array1 >
整数型配列変数で、構造は以下の通りです。
(0),(1) ボタン(根っこの部分)のxサイズ (2) ボタンのメッセージの論理フォントサイズ (3) アイテムのメッセージの論理フォントサイズ (4) アイテムのメッセージの左余白 (5),(6),(7) アイテムの通常状態の背景色のR,G,B値 (8),(9),(10) 〃文字色〃 (11),(12),(13) アイテムのフォーカス状態の背景色のR,G,B値 (14),(15),(16) 〃文字色〃 (17) アイテムの個数 (18) ボタン用画像セット(上から下へ「通常」,「フォーカス状態」,「押し下げ状態」の順で並んだ素材画像)のあるウィンドウのID (19),(20) ボタン用画像セットの左上x,y座標 (21) メニュー板の最低xサイズ (少なくともこれ以上の幅で作成されます。) (22) アイテムのyサイズ〔px〕 < array2 >
文字列型配列変数です。要素(m)に第m番アイテム(m=0,1,2,・・・)のメッセージを保存してください。
ボタンのメッセージの色は、color命令で指定されている色になります。
無事に設置できた場合はプルダウンメニューメニューのIDがstatに格納されます。
それ以外の場合はstatの値が-1になります。アイテムが選択されると「var1」で指定されたラベルにサブルーチンジャンプします。
その際、プルダウンメニューのIDとアイテムのIDがそれぞれ「num1_public@GUIObj_187」変数の要素(0),(1)に保存されます。
MGO_DelPdwnMenu プルダウンメニューを削除します。 [ 書式 ]
MGO_DelPdwnMenu P1
P1 : プルダウンメニューのID
無事に削除できた場合はstatの値が0になり、それ以外の場合は1になります。
MGO_ChPos_PdwnMenu プルダウンメニューの位置を変更します。 [ 書式 ]
MGO_ChPos_PdwnMenu P1 ,P2,P3
P1 : プルダウンメニューのID
P2,P3 : 新しい座標無事に設定できた場合はstatの値が0になり、それ以外の場合は1になります。
MGO_SetAppearance_PdwnMenu プルダウンメニューの装飾を設定します。 [ 書式 ]
MGO_SetAppearance_PdwnMenu P1,array,str
P1 : プルダウンメニューのID
array : 設定用変数
str : ボタンの新しいメッセージ< array >
整数型配列変数で、構造は以下の通りです。
(0),(1),(2) アイテムの通常状態の背景色のR,G,B値 (3),(4),(5) アイテムの通常状態の文字色のR,G,B値 (6),(7),(8) アイテムのフォーカス状態の背景色のR,G,B値 (9),(10),(11) アイテムのフォーカス状態の文字色のR,G,B値 (12) ボタン用画像セットのあるウィンドウのID (13),(14) ボタン用画像セットの左上座標 (15),(16),(17) ボタンのメッセージの色 無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChItemMes_PdwnMenu プルダウンメニューのアイテムのメッセージを変更します。
ただし、メニューウィンドウのサイズは変更できません。文字列の長さに注意してください。[ 書式 ]
MGO_ChMes_PdwnMenu P1,P2,str
P1 : プルダウンメニューのID
P2 : アイテムのID
str : 新しいメッセージ無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetKeyCode_PdwnMenu プルダウンメニューのアイテムのフォーカス移動用のキーコードを設定します。
キー入力に反応してアイテムのフォーカス移動ができるようになります。
例えば「開く (O)」の「O」に当たる部分を設定します。
同じキーコードを2つ以上のアイテムに割り当てた場合は、最上部のアイテムのみがフォーカスされます。[ 書式 ]
MGO_SetKeyCode_PdwnMenu P1,P2,P3
P1 : プルダウンメニューのID
P2 : アイテムのID
P3 : キーコード(HSPの「getkey」と同様)キーコードとして0を指定すると、キー入力によるフォーカス移動が無効になります。
無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableItem_PdwnMenu プルダウンメニューのアイテムの有効/無効を設定します。 [ 書式 ]
MGO_EnableItem_PdwnMenu P1,P2,P3
P1 : プルダウンメニューのID
P2 : アイテムのID
P3 : オプション。 (0,1)=(無効/有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableBtn_PdwnMenu プルダウンメニュー本体の有効/無効を設定します。 [ 書式 ]
MGO_EnableBtn_PdwnMenu P1,P2
P1 : プルダウンメニューのID
P2 : オプション。 (0,1)=(無効/有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_PdwnMenu プルダウンメニューの表示/非表示を切り替えます。 [ 書式 ]
MGO_VisibleOrNot_PdwnMenu P1,P2
P1 : プルダウンメニューのID
P2 : オプション。 (0,1)=(非表示/表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_PdwnMenu プルダウンメニューの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_PdwnMenu P1 ,array1 ,array2 ,array3 ,arrar4 ,var
P1 : プルダウンメニューのID
array1〜4 ,var : 結果を格納する変数< array1 >
整数型配列変数で、構造は以下の通りです。
(0),(1) ボタンのx,yサイズ (2),(3) ボタンの左上x,y座標 (※親ウィンドウ基準) (4) 有効/無効 (0,1) = (無効,有効) (5) 表示/非表示 (0,1) = (非表示,表示) (6) ボタンのメッセージの論理フォントサイズ (7) アイテムのメッセージの論理フォントサイズ (8) アイテムのメッセージの左端xオフセット (9),(10),(11) アイテムの通常状態の背景色のR,G,B値 (12),(13),(14) アイテムの通常状態の文字色のR,G,B値 (15),(16),(17) アイテムのフォーカス状態の背景色のR,G,B値 (18),(19),(20) アイテムのフォーカス状態の文字色のR,G,B値 (21),(22) メニューのx,yサイズ (23) アイテムの個数 (24),(25),(26) ボタンのメッセージの色のR,G,B値 (27) ボタンのウィンドウID (28) メニュー〃 (29) ボタンのウィンドウハンドル (30) メニュー〃 (31) アイテムのyサイズ (32) ボタンのマウスオーバー情報 (0,1,2) = (非マウスオーバー,マウスオーバー,押し下げ状態) (33) メニューのアイテムのフォーカス状態 (-1,m) = (フォーカス無し,m番アイテムがフォーカス状態) < array2 >
整数型配列変数で、構造は以下の通りです。
要素(m,*)に第m番アイテムの情報が保存されます。
(m,0) アイテムの有効/無効 (0,1)=(無効,有効) (m,1) キー入力によるフォーカス移動に反応する仮想キーコード < array3 >
文字列型配列変数で、構造は以下の通りです。
(0) ボタンのメッセージのフォント名 (1) アイテムのフォント名 (2) ボタンのメッセージ < array4 >
文字列型配列変数で、要素(m)に第m番アイテムのメッセージが格納されます。
< var >
ラベル型変数で、アイテムがクリックされたときにサブルーチンジャンプするラベルの情報が格納されます。
無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetChkBox 現在の操作先ウィンドウの、pos命令で指定されている位置にチェックボックスを設置します。 [ 書式 ]
MGO_SetChkBox w ,l ,m ,n ,x,y ,label
w : チェックボックスとして使用するウィンドウのID
l,m : 大きさ〔px〕
n : 画像素材のあるウィンドウID
x,y : 画像素材(※1)の左上x,y座標
label : ON/OFFが変更される度にサブルーチンジャンプするラベル情報を格納したラベル型変数無事に設置できた場合はチェックボックスのIDがstatに保存されます。それ以外の場合は-1が保存されます。
< ※1画像素材について >
左から順に「OFF通常」、「ON通常」、「OFFマウスオーバー」,「ONマウスオーバー」の状態を横に並べたものです。
(例)
ON/OFFが変更される度にサブルーチンジャンプが行われますが、その際、「num1_public@GUIObj_210」変数の要素(0),(1)にそれぞれ反応したチェックボックスのIDとON/OFF情報 (0,1)=(OFF/ON)が保存されます。
MGO_DelChkBox チェックボックスを削除します。 [ 書式 ]
MGO_DelChkBox P1
P1 : チェックボックスのID
無事に削除できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_MoveChkBox チェックボックスの位置を変更します。 [ 書式 ]
MGO_MoveChkBox P1 ,P2,P3
P1 : チェックボックスのID
P2,P3 : 新しい座標無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetStat_ChkBox チェックボックスのON/OFFを取得します。 [ 書式 ]
val = MGO_GetStat_ChkBox(P1)
P1 : チェックボックスのID
無事に取得できた場合は、戻り値が0または1 (0,1)=(OFF/ON) になります。それ以外の場合は-1になります。
MGO_SetStat_ChkBox チェックボックスのON/OFFを設定します。 [ 書式 ]
MGO_SetStat_ChkBox P1,P2
P1 : チェックボックスのID
P2 : オプション (0,1)=(OFF/ON)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableChkBox チェックボックスの有効/無効を設定します。 [ 書式 ]
MGO_EnableChkBox P1,P2
P1 : チェックボックスのID
P2 : オプション (0,1)=(無効/有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_ChkBox チェックボックスの表示/非表示を設定します。 [ 書式 ]
MGO_VisibleOrNot_ChkBox P1,P2
P1 : チェックボックスのID
P2 : オプション (0,1)=(非表示/表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_ChkBox チェックボックスの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_ChkBox P1,array,var
P1 : チェックボックスのID
array : 結果を格納する変数
var : ON/OFF状態が変更される度にサブルーチンジャンプするラベル情報を格納する変数。< array >
整数型配列変数で、構造は以下の通りです。
(0),(1) x,yサイズ〔px〕 (2),(3) 左上x,y座標 (※親ウィンドウ基準) (4),(5) 有効/無効 (0,1) = (無効,有効) (6),(7) 表示/非表示 (0,1) = (非表示,表示) (8) ON/OFF (0,1)=(OFF/ON) (9) マウスオーバーによる強調表示状態かどうか。(0,1)=(でない,である) 無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_SetRadioBtn 現在の操作先ウィンドウの、pos命令で指定されている位置にラジオボタンを設置します。 [ 書式 ]
MGO_SetRadioBtn P1,P2 ,P3,P4 ,P5, P6,P7 ,P8
P1 : ラジオボタンとして使用したいウィンドウのID
P2 : 所属させるグループID
P3,P4 : 大きさ〔px〕
P5 : 画像素材のあるウィンドウID
P6,P7 : 画像素材(※1) の左上x,y座標
P8 : ON/OFFが変更される度にサブルーチンジャンプするラベル情報を格納したラベル型変数P3で指定したグループIDのグループに所属させます。
同じグループ属する複数のラジオボタンの中から、ユーザーは1つのみを選択状態にすることができます。新規グループが作成される場合はデフォルトでONになります。それ以外の場合はOFFになります。
無事に設置できた場合はラジオボタンのIDがstatに保存されます。それ以外の場合は-1が保存されます。
< ※1画像素材について >
左から順に「OFF通常」、「ON通常」、「OFFマウスオーバー」,「ONマウスオーバー」の状態を横に並べたものです。
(例)
ON/OFFが変更される度にサブルーチンジャンプが行われますが、その際、ONになったラジオボタンのIDが「num1_public@GUIObj_230」変数に保存されます。
MGO_DelRadioBtn ラジオボタンを削除します。 [ 書式 ]
MGO_DelRadioBtn P1
P1 : ラジオボタンのID
削除されるラジオボタンが選択状態だった場合、同じグループに属する他のラジオボタンがあれば、最もIDの若いものが選択状態になります。
無事に削除できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_MoveRadioBtn ラジオボタンの位置を変更します。 [ 書式 ]
MGO_MoveRadioBtn P1 ,P2,P3
P1 : ラジオボタンのID
P2,P3 : 新しいx座標無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetChoice_RdBtn ラジオボタンの選択状態を取得します。 [ 書式 ]
val = MGO_GetChoice_RdBtn(P1)
P1 : グループID
指定されたグループに所属するラジオボタンの中で、選択されているもののIDが返ります。
エラーが発生した場合は-1が返ります。MGO_SetChoice_RdBtn ラジオボタンの選択状態を設定します。 [ 書式 ]
MGO_SetChoice_RdBtn P1
P1 : ONにしたいラジオボタンのID
他の然るべきラジオボタンがOFFに切り替わります。
無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableRadioBtn ラジオボタンの有効/無効を設定します。 [ 書式 ]
MGO_EnableRadioBtn P1,P2
P1 : ラジオボタンのID
P2 : オプション (0,1) = (無効/有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_VisibleOrNot_RdBtn ラジオボタンの表示/非表示を切り替えます。 [ 書式 ]
MGO_VisibleOrNot_RdBtn P1,P2
P1 : ラジオボタンのID
P2 : オプション (0,1) = (非表示/表示)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_RdBtn ラジオボタンの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_RdBtn P1 ,array,var
P1 : ラジオボタンのID
array,var : 結果を格納する変数<array >
整数型配列変数で、構造は以下の通りです。
(0) 所属するグループのID (1),(2) x,yサイズ〔px〕 (3),(4) 座標 (5) 有効/無効 (0,1) = (無効/有効) (6) 表示/非表示 (0,1) = (非表示/表示) (7) ON/OFF (0,1) = (OFF/ON) (8) ウィンドウID (9) ウィンドウハンドル (10) マウスオーバーによる強調表示状態かどうか。(0,1)=(でない,である) <var >
ラベル型変数で、ON/OFFが変更される度にサブルーチンジャンプするラベルの情報が格納されます。
無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_MakePopupMenu ポップアップメニューを作成します。 [ 書式 ]
MGO_MakePopupMenu P1,array1,array2,str,var
P1 : メニュー板に使うウィンドウのID
array1,2 : 設定用変数
str : アイテムのメッセージのフォント名
var : アイテムが選択された時にサブルーチンジャンプするラベルを格納した変数< array1 >
整数型配列変数で、構造は以下の通りです。
(0) アイテムのメッセージの論理フォントサイズ (1) アイテムのメッセージの左端余白〔px〕 (2),(3),(4) アイテムの通常状態の背景色のR,G,B値 (5),(6),(7) 〃文字色〃 (8),(9),(10) アイテムのフォーカス状態の背景の色のR,G,B値 (11),(12),(13) 〃文字色〃 (14) アイテムの個数 (15) メニュー板の最低xサイズ (少なくともこれ以上の幅で作成されます。) (16) アイテムのyサイズ〔px〕 < array2 >
文字列型配列変数です。要素(m)に第m番アイテム(m=0,1,2,・・・)のメッセージを保存してください。
無事に設置できた場合はポップアップメニューのIDがstatに保存されます。それ以外の場合は-1が保存されます。
アイテムが選択されると「var1」で指定されたラベルにサブルーチンジャンプします。
その際、ポップアップメニューのIDとアイテムのIDがそれぞれ「num1_public@GUIObj_262」変数の要素(0),(1)に保存されます。
MGO_DelPopupMenu ポップアップメニューを削除します。 [ 書式 ]
MGO_DelPopupMenu P1
P1 : ポップアップメニューのID
無事に削除できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_OpenOrClose_PUMenu ポップアップメニューを開閉します。
既に開いているメニューがある場合はこの操作は失敗します。開かれているメニューは入力フォーカスを失うと自動的に閉じるので、通常はこの命令であえて閉じる必要はありません。
[ 書式 ]
MGO_OpenOrClose_PUMenu P1,P2,P3,P4
P1 : ポップアップメニューのID
P2 : オプション(0,1)=(close,open)
P3,P4 : 出現座標(デスクトップ基準)。(※そのままでは見切れてしまう場合は画面内に収まるように自動調整されます。)。P2が0のときは任意の値で構いません。無事に開閉できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChAppearance_PUMenu ポップアップメニューの装飾を変更します。 [ 書式 ]
MGO_ChAppearance_PUMenu P1,array
P1 : ポップアップメニューのID
array : 設定用変数< array >
整数型配列変数で、構造は以下の通りです。
(0),(1),(2) アイテムの通常状態の背景色のR,G,B値 (3),(4),(5) 〃文字色〃 (6),(7),8) アイテムのフォーカス状態の背景の色のR,G,B値 (9),(10),(11) 〃文字色〃 無事に変更できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_ChItemMes_PUMenu ポップアップメニューのアイテムのメッセージを変更します。
メニュー板のサイズは変えられません。[ 書式 ]
MGO_ChItemMes_PUMenu P1,array
P1 : ポップアップメニューのID
array : 設定用変数< array >
文字列型配列変数です。要素(m)に第m番アイテム(m=0,1,2,・・・)のメッセージを保存してください。
無事に変更できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_AssignKeyCode_PUMenu ポップアップメニューのアイテムのフォーカス移動用のキーコードを設定します。
キー入力に反応してアイテムのフォーカス移動ができるようになります。
例えば「開く (O)」の「O」に当たる部分を設定します。
同じキーコードを2つ以上のアイテムに割り当てた場合は、最上部のアイテムのみがフォーカスされます。[ 書式 ]
MGO_AssingKeyCode_PUMenu P1,P2,P3
P1 : ポップアップメニューのID
P2 : アイテムのID
P3 : キーコード(HSPの「getkey」と同様)キーコードとして0を指定すると、キー入力によるフォーカス移動が無効になります。
無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_EnableItem_PUMenu ポップアップメニューのアイテムの有効/無効を切り替えます。 [ 書式 ]
MGO_EnableItem_PUMenu P1,P2,P3
P1 : ポップアップメニューのID
P2 : アイテムのID
P3 : オプション。 (0,1)=(無効/有効)無事に設定できた場合はstatの値が0に、それ以外の場合は1になります。
MGO_GetInternalInfo_PUMenu ポップアップメニューの内部情報を取得します。 [ 書式 ]
MGO_GetInternalInfo_PUMenu P1,array1,array2,array3,var1,var2
P1 : ポップアップメニューのID
array1,2,3,var1,2 : 結果を格納する変数< array1 >
整数型配列変数で、構造は以下の通りです。
(0) アイテムのメッセージの論理フォントサイズ (1) アイテムのメッセージの左端xオフセット (2),(3),(4) アイテムの通常状態の背景色のR,G,B値 (5),(6),(7) アイテムの通常状態の文字色の〃 (8),(9),(10) アイテムのフォーカス状態の背景色の〃 (11),(12),(13) アイテムのフォーカス状態の文字色のR値 (14),(15) メニューのx,yサイズ (16) アイテムの個数 (17) メニューのウィンドウID (18) メニューのウィンドウハンドル (19) アイテムのyサイズ〔px〕 (20) メニューのアイテムのフォーカス状態 (-1,m) = (フォーカス無し,m番アイテムがフォーカス状態) < array2 >
整数型配列変数です。
要素(m,*)に第m番アイテム(m=0,1,2,・・・)の情報が格納されます。
*の各値とそれに対応する情報は以下の通りです。
0 : アイテムの有効/無効 (0,1)=(無効,有効)
1 : キー入力によるフォーカス移動に反応する仮想キーコード< array3 >
文字列型配列変数で、要素(m)に第m番アイテムのメッセージが格納されます。
< var1 >
アイテムのメッセージのフォント名が格納されます。
< var2 >
アイテムを選択したときにサブルーチンジャンプするラベルの情報が保存されるラベル型変数です。
無事に取得できた場合はstatの値が0に、それ以外の場合は1になります。
>>