Top(FrontPage)
トップページへ
[
一覧
|
検索
|
最終更新
] [
差分
|
履歴
]
ツール
ヘルプ
新規
開始行:
*簡易配列からメニューを構築する [#b57ae060]
動的に要素数が変化する配列からメニューを構築し選択判定し...
1)初期化用の関数を用意します。
MyTestMenuItem
{
testmenuitem1 = "てすと1,てすと2,てすと3"
testmenuitem2 = "テスト1,テスト2,テスト3,テスト4,テ...
}
2)OnFirstBootおよびOnBootでMyTestMenuItemを呼びます。
3)既存の関数内に処理を埋め込みます。
OpenMenu
{
"\0\s[0]/
:
:
\q[メニュー1,TESTMENU1]\n/
\q[メニュー2,TESTMENU2]\n/
:
:
\e"
}
OnChoiceSelect
{
//---- メニューアイテムIDを抽出する
_menuitemid = 0 // ずっと下でこの変数を参照できるように...
if STRSTR(reference0,"TESTMENUITEM1_",0) == 0
{
_menuitemid = TOINT(ERASE(reference0,0,STRLEN("TESTMEN...
reference0 = "TESTMENUITEM1"
}
if STRSTR(reference0,"TESTMENUITEM2_",0) == 0
{
_menuitemid = TOINT(ERASE(reference0,0,STRLEN("TESTMEN...
reference0 = "TESTMENUITEM2"
}
//---- メインメニュー
case reference0
{
:
:
when "TESTMENU1"
{
//---- メニュー1表示
_list = ""
for _i = 0 ; testmenuitem1[_i] != "" ; _i++
{
_list += "\q[%(testmenuitem1[_i]),TESTMENUITEM1_%(_i...
}
"\0\s[0]\b[2]%(_list)\e"
}
when "TESTMENU2"
{
//---- メニュー2表示
_list = ""
for _i = 0 ; testmenuitem2[_i] != "" ; _i++
{
_list += "\q[%(testmenuitem2[_i]),TESTMENUITEM2_%(_i...
}
"\0\s[0]\b[2]%(_list)\e"
}
when "TESTMENUITEM1"
{
//---- とりあえずはアイテム文字列を喋るだけ
"\0\s[0]%(testmenuitem1[_menuitemid])が選択されました...
}
when "TESTMENUITEM2"
{
//---- とりあえずはアイテム文字列を喋るだけ
"\0\s[0]%(testmenuitem2[_menuitemid])が選択されました...
}
:
:
}
}
終了行:
*簡易配列からメニューを構築する [#b57ae060]
動的に要素数が変化する配列からメニューを構築し選択判定し...
1)初期化用の関数を用意します。
MyTestMenuItem
{
testmenuitem1 = "てすと1,てすと2,てすと3"
testmenuitem2 = "テスト1,テスト2,テスト3,テスト4,テ...
}
2)OnFirstBootおよびOnBootでMyTestMenuItemを呼びます。
3)既存の関数内に処理を埋め込みます。
OpenMenu
{
"\0\s[0]/
:
:
\q[メニュー1,TESTMENU1]\n/
\q[メニュー2,TESTMENU2]\n/
:
:
\e"
}
OnChoiceSelect
{
//---- メニューアイテムIDを抽出する
_menuitemid = 0 // ずっと下でこの変数を参照できるように...
if STRSTR(reference0,"TESTMENUITEM1_",0) == 0
{
_menuitemid = TOINT(ERASE(reference0,0,STRLEN("TESTMEN...
reference0 = "TESTMENUITEM1"
}
if STRSTR(reference0,"TESTMENUITEM2_",0) == 0
{
_menuitemid = TOINT(ERASE(reference0,0,STRLEN("TESTMEN...
reference0 = "TESTMENUITEM2"
}
//---- メインメニュー
case reference0
{
:
:
when "TESTMENU1"
{
//---- メニュー1表示
_list = ""
for _i = 0 ; testmenuitem1[_i] != "" ; _i++
{
_list += "\q[%(testmenuitem1[_i]),TESTMENUITEM1_%(_i...
}
"\0\s[0]\b[2]%(_list)\e"
}
when "TESTMENU2"
{
//---- メニュー2表示
_list = ""
for _i = 0 ; testmenuitem2[_i] != "" ; _i++
{
_list += "\q[%(testmenuitem2[_i]),TESTMENUITEM2_%(_i...
}
"\0\s[0]\b[2]%(_list)\e"
}
when "TESTMENUITEM1"
{
//---- とりあえずはアイテム文字列を喋るだけ
"\0\s[0]%(testmenuitem1[_menuitemid])が選択されました...
}
when "TESTMENUITEM2"
{
//---- とりあえずはアイテム文字列を喋るだけ
"\0\s[0]%(testmenuitem2[_menuitemid])が選択されました...
}
:
:
}
}
ページ名: