Mxs:未在范围(文件)中定义的卷展栏控制值



我正在尝试从嵌套函数(我使用 filein(( 命令调用的函数(内部访问卷展栏控件(复选框、微调器等(的状态/值,但是我不断收到错误,指出 rolout 控件未定义。

我编写了一些简单的代码来演示这个问题:

1( 使用 filein 命令输入文件的主脚本:

Rollout exporter "Simple Exporter" width:300 height:610 (
button btn_do_stuff "Do stuff" pos:[18,14] width:116 height:60 
checkbox some_option "some_option" pos:[18,100] width:116 height:60
on btn_do_stuff pressed do(
filein "printstuff.ms"
)   
)
createdialog exporter

2( 使用 filein(( 命令导入的脚本文件:

if some_option.checked == true then(
messagebox "some_option.checked == true"
)else(
"some_option.checked == false"
)

3( 错误消息 :

-- Unknown property: "checked" in undefined <<

错误发生在使用 filein 导入的脚本文件的第一行中: 以下行中发生错误:

if some_option.checked == true then(

任何帮助将不胜感激,谢谢!

Filein

全局范围内进行评估,它只能访问全局变量,而不能访问您尝试访问的局部变量。也就是说,这里的解决方案很简单,因为推出本身似乎是在全球范围内声明的——而不是some_option.checked使用exporter.some_option.checked

相关内容

  • 没有找到相关文章

最新更新