ラベル指定に文字列変数を使いたい
ぴよぴよ 2013/5/19(Sun) 11:21:36|NO.54145
aaaに文字列を代入して指定したラベルに飛びたいのですがうまくいきません。
aaa="文字列"
goto *aaa
stop
*文字列
mes "成功"
stop
何卒アドバイスをよろしくお願いします。
ht. 2013/5/19(Sun) 12:11:32|NO.54146
HSPはコンパイルと同時にラベルや変数名が消失するのでそういう使い方はできません。
できたとしても利点がほとんどなくバグの温床になりやすいので他の方法を取るべきです。
こんなふうに自分で参照するか、ラベル型変数を使ってみてはいかがでしょう。
#module
#deffunc goto_by_str str _label
if _label == "a" : goto *a@
if _label == "b" : goto *b@
if _label == "c" : goto *c@
dialog _label + "というラベルは存在しません。"
return
#global
goto_by_str "b"
stop
*a
mes "aのラベル"
stop
*b
mes "bのラベル"
stop
*c
mes "cのラベル"
stop
ぴょぴょ 2013/5/19(Sun) 12:14:42|NO.54147
> aaaに文字列を代入して指定したラベルに飛びたいのですがうまくいきません。
ラベル型の変数に代入すれば良いでしょう。
aaa=*文字列
goto aaa
stop
*文字列
mes "成功"
stop
それともう一つ。
私とほぼ同じハンドル名を使われると困るな。
ぴよぴよ 2013/5/19(Sun) 13:43:19|NO.54150
ht.さん、ぴょぴょさん有難うございます!
お陰様で何とか解決することができました!
あと今度からハンドル名変えます!