2017-04-17 51 views
0

更改按钮图标与Maya 16玛雅的Python - 基于主动命令

工作我有一个iconTextButton设置,都包含几个menuItem,其中每个menuItem带有图标的popupMenu。我希望父级iconTextButton显示menuItem图标,其中menuItem当前处于活动状态。

这是我的当前设置:

cmds.iconTextButton(style='iconAndTextHorizontal', image1='MainButton.png', h=40,w=100, bgc=[0.35, 0.35, 0.35], label='Open Submenu Pallet') 

def someImportantFunction (*args): 
    somethingImportant 

cmds.popupMenu(b=1) 
cmds.menuItem(label='do Something', command=someImportantFunction, image1='subMenuIconToChangeTo.png') 

我真的还是相当新的一般脚本和逻辑,只是不能让我的头周围。

回答

1

只需修改原来的按钮来改变它的外观,当你火了菜单命令:

window = cmds.window(title='example') 
layout = cmds.columnLayout(adj=True) 
ict = cmds.iconTextButton(style='iconAndTextHorizontal', image1='MainButton.png', h=40,w=100, bgc=[0.35, 0.35, 0.35], label='Open Submenu Pallet') 
popup = cmds.popupMenu(b=1) 

def something(*_): 
    print "something" # real work goes here 
    cmds.iconTextButton(ict, e=True, label = 'something') 

def something_else(*_): 
    print "something else" 
    cmds.iconTextButton(ict, e=True, label = 'something else') 

cmds.menuItem(label='something', image1='somethingIcon', c= something) 
cmds.menuItem(label='something else', image1='otherIcon', c=something_else) 
cmds.setParent("..") 
cmds.showWindow(window) 

,关键是要确保你挂到一个参考给你创造这样你就可以在小部件编辑或使用您的gui项目的e=Trueq=True标志进行查询。

+0

这非常有帮助,谢谢! – dave

+0

如果你不介意,还有一件事。现在'iconTextbutton'会显示所选的'menuItem',我将如何设置它以便'iconTextButton'根据当前选择的'menuItem'更改其默认命令。我想它只是从我现在的一小步,没有找到任何参考寿。 – dave

+0

您可以像编辑标签一样编辑'ict'的命令 – theodox