使用rollout creator(Maxscript)访问单选按钮的更改状态

时间:2013-06-03 19:15:19

标签: radio-button maxscript

我使用动态展示会遇到另一个问题。我想为单选按钮组的选择更改时添加处理程序。这就是我所拥有的:

--Instantiate a new dynamic rollout object
dro = rolloutCreator "CustomParamsRollout" "Edit Custom Parameters"
--Begin building rollout
dro.begin()

--Create an array to hold the names of the radio button options
dro.addLocal "RadioOptions" init: #("Predefined", "Custom")
--add control  --type        --label --displayed name   --labels             --alignment
dro.addControl #radiobuttons #rdo_1 "radio_1" paramStr: "labels:RadioOptions align:#left"
--Add a handler for the first radio button
dro.addHandler #rdo_1 #changed filter:on paramStr:"1" codeStr:"MessageBox @Hey@"

createDialog (dro.end())

我不断得到的错误是:

编译错误:错误的数字或时间语法

排队:在rdo_1上更改了1do

每当我点击一个单选按钮。我最确定我的语法编写得很糟糕,因为到目前为止,这是该项目中最大的问题。任何有用的提示将不胜感激。 谢谢。

1 个答案:

答案 0 :(得分:0)

从3ds Max 2012起,您需要为参数字符串添加额外的空间(在Max 2011及更早版本中,它可以正常工作。因此,paramStr:"state"代替paramStr:"state ",而不是{{1}} - 注意使用整数作为变量名称将不起作用,rollout处理程序不会像模式匹配那样工作,您需要处理 inside 处理程序范围内的不同参数。