AddGraphicsScript と Eval/Expr による GB への動的更新 - 「名前が解決されていません」というエラーがスローされるnamesdefaulttohere(1);
try(nw3<<CLOSE window="">];
foreach({alpha}, words("a b c"),
map[alpha] = graphbox(suppress axes, frame size(100,100));
vlb<<APPEND></APPEND></CLOSE>Error:
<CODE class=" language-jsl">Name Unresolved: key in access or evaluation of 'key' , key/*###*/
<BR /><BR /><LINGO-LABS id="lingo-labs-845133" slang="en-US" mode="CREATE"><LINGO-LABEL>自動化とスクリプト</LINGO-LABEL></LINGO-LABS>Re: AddGraphicsScript と Eval/Expr による GB の動的更新 - 「名前が解決されていません」というメッセージが表示される
分かりました。評価時に `key` の値を取得するのではなく、GB を初期化するときに保存することができます。ここでは `beta` と呼んでいますが、key/beta は words("abc") の 1 つへの参照にすぎません。
toggle = expr(
x = random integer(10,90);
y = random integer(10,90);
foreach({key}, map,
gb = map[key];
f = gb[framebox(1)];
f << add graphics script(
eval(eval expr( text({x,y}, expr(beta)) )) // change #1
)
)
);
vlb = vlistbox();
map = [=>];
foreach({alpha}, words("a b c"),
map[alpha] = eval(eval expr(graphbox(suppress axes, frame size(100,100),
beta = expr(alpha); // change #2 (plus wrapping GB in eval/eval expr
)));
vlb<<APPEND></APPEND><BR /><BR />