擅长:python、mysql、java
<p>如果使用cmds,则可以引用硬编码的ui名称:</p>
<pre><code>xAxisBox = cmds.checkBox("xAxisBox", l="x")
yAxisBox = cmds.checkBox("yAxisBox", l="y")
zAxisBox = cmds.checkBox("zAxisBox", l="z")
btAxis = cmds.button(label="Do the thing!", command=Blendy)
def Blendy ():
xCheck = cmds.checkBox('xAxisBox', query=True, value=True)
yCheck = cmds.checkBox('yAxisBox', query=True, value=True)
zCheck = cmds.checkBox('zAxisBox', query=True, value=True)
print xCheck
print yCheck
print zCheck
</code></pre>
<p>但是使用pymel,您可以尝试不用硬编码:</p>
^{pr2}$
<p>您可以导入pymel<code>import pymel.core as pm</code></p>
<p>但如果您要使用pymel,我建议您重写Blendy函数,如下所示:</p>
<pre><code>def Blendy(xbox, ybox, zbox):
print xbox.getValue(), ybox.getValue(), zbox.getValue()
</code></pre>
<p>最后,同样重要的是,您可以使用类来存储值</p>
<p>neelz从其他资源得到的回答是:
使用模块<code>partial</code>该方案与回调类似:</p>
<pre><code>from functools import partial
cmds.checkBox(onCommand=partial(func_without_parenthesizes, arg, arg))
</code></pre>