我已经在 Maxscript 工作了大约 3 个月,所以我还很新,我最近遇到了在 ms 文件中执行字符串的能力,如下所示:
str = "print \"hello\""
execute str
正如您所料,Max Listener 将输出“hello”。我正在尝试使用此功能创建一个动态卷展栏,该卷展栏为链接到我场景中 RailClone 对象的每个参数创建一个按钮。RailClone 对象对这个问题并不重要,所以我很确定你不需要知道任何关于它的信息来提供帮助。
无论如何,这是我的代码:
--create an array of button names
btn_names = for p in obj.paname collect ("btn_" + p as string)
str = "group \"Custom Parameters\" \n(\n"
print btn_names
for p in 1 to btn_names.count do
(
str += "button " + btn_names[p] + "\n"
str += "on " + btn_names[p] + " pressed do\n"
str += "try\n(\n" + "\tprint \"hello test\"\n"
str += ")\n" + "catch(messageBox \"Script failed\")\n"
)
str += ")\n"
str = "print \"hello\""
print str
execute str
第一行获取了对象的所有参数,但它最终只是一个字符串数组。我的问题发生在执行行上,输出为:
MAXScript Rollout Handler 异常:--运行时错误:group() 需要节点或节点集合,得到:“自定义参数”<<
据我所知,我所有的格式都是正确的,那么我还需要做些什么吗?我感谢任何和所有的帮助。谢谢你。