ラベル指定に文字列変数を使いたい

ぴよぴよ        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.さん、ぴょぴょさん有難うございます!
お陰様で何とか解決することができました!

あと今度からハンドル名変えます!