SACT2 for System4.x

メニュー(選択肢)

SACT2では、System3.xの選択肢($...$...$,]によるもの)と同様の機能を 関数によって表記します。 表記が少し長くなる代わりに、柔軟性は高くなっています。

利用の流れ

メニューは、

(1)項目を登録(MENU_ADD)

(2)選択(MENU_SELECT)

の流れで利用します。

また、 MENU_SET_METRICS によって、表示などを設定することもできます。

利用法の種類

SACT2のメニュー(選択肢。以下単にメニューと表記)は、

(1)メニュー項目番号を指定して、選択された番号を取得する

(2)メニュー項目にコールバック関数を指定して選択後コールバック関数を自動的に呼び出す

(3)1および2の併用

などの方法で利用できます。

コード例

コールバック関数を利用する例

void 行動()
{
    MENU_ADD(0, "移動",     &移動);
    MENU_ADD(0, "アイテム", &アイテム);
    MENU_ADD(0, "システム", &システム);
    MENU_SELECT();
}

void 移動(void)
{
    ....移動....
}

void アイテム(void)
{
    ....アイテム....
}

void システム(void)
{
    ....システム....
}

戻り値を利用する例

void アイテム(int nItem)
{
    MENU_ADD(1, "使う");
    MENU_ADD(2, "捨てる");
    MENU_ADD(3, "調べる");
    int nSelect = MENU_SELECT();
    switch(nSelect)
    {
    case 1:アイテム/使う(nItem);  break;
    case 2:アイテム/捨てる(nItem);break;
    case 3:アイテム/調べる(nItem);break;
    }
}

メニュー関数一覧

関数機能
MENU_ADDメニュー項目を登録
MENU_SELECTメニューを表示し選択を実行
MENU_SET_METRICSメニューの設定
MENU_GET_METRICSメニューの設定を取得