gpt4 book ai didi

python - 为什么 Maya 2009 TreeView 控件在拖动时出现语法错误?

转载 作者:太空宇宙 更新时间:2023-11-03 19:39:43 26 4
gpt4 key购买 nike

我在 Maya 2009 中使用 TreeView 控件,但在拖放时遇到语法错误。我的代码如下(为简洁起见,进行了简化):

class View(event.Dispatcher):
def __init__(self):
self.window = cmds.window()
tree_view = cmds.treeView(
numberOfButtons=1,
allowReparenting=True,
dragAndDropCommand=self.tree_view_onDrag
)
cmds.showWindow(self.window)

def tree_view_onDrag(self, dropped_items, old_parents, old_indexes, new_parent, new_indexes, item_before, item_after, *args):
print "worked"

当我拖放元素时,我得到以下命令在控制台中执行:

<bound method View.tree_view_onDrag of  {"layer 3"} {""} {1} "layer 1"  {0} "" "layer 2";

并出现以下错误:

// Error: <bound method View.tree_view_onDrag of  {"layer 3"} {""} {1} "layer 1"  {0}€ // 
// Error: Line 1.1: Syntax error //

编辑:事实证明,我遇到的问题是由于 treeView 仍在其大多数事件回调上实现 MEL 函数调用。当 MEL 解释器尝试将参数提供给命令名称时,会引发上述错误。

最佳答案

参见http://download.autodesk.com/us/maya/2009help/CommandsPython/treeView.html :dragAndDropCommand 是一个字符串——您正在传递一个绑定(bind)方法,Maya 使用它的 repr。我不确定,但我怀疑字符串应该命名顶级(模块级)函数,而不是绑定(bind)方法。

关于python - 为什么 Maya 2009 TreeView 控件在拖动时出现语法错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/820697/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com