Maya Python - 根据活动命令更改按钮图标
Maya Python - Change Button Icon Based On Active Command
使用 maya 16
我确实有一个 iconTextButton
设置,其中 popupMenu
包含几个 menuItem
,其中每个 menuItem
都有一个图标。我希望父项 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')
总的来说,我对脚本和逻辑仍然很陌生,只是无法理解它。
您可以编辑原始按钮以更改其在启动菜单命令时的外观:
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)
关键是要确保您坚持对您创建的小部件的引用,以便您可以使用 e=True
或 q=True
标志为您的 gui 项目编辑或查询它们。
使用 maya 16
我确实有一个 iconTextButton
设置,其中 popupMenu
包含几个 menuItem
,其中每个 menuItem
都有一个图标。我希望父项 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')
总的来说,我对脚本和逻辑仍然很陌生,只是无法理解它。
您可以编辑原始按钮以更改其在启动菜单命令时的外观:
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)
关键是要确保您坚持对您创建的小部件的引用,以便您可以使用 e=True
或 q=True
标志为您的 gui 项目编辑或查询它们。