saveMenu(
string string
)
注意: オブジェクト名や引数を表す文字列はカンマで区切ります。これは概要には示されていません。
saveMenu は 「元に戻す」が可能、「照会」が不可能、「編集」が不可能 です。
このコマンドを使用して、メニューの内容を保存し、メニューの別のインスタンスを後から再作成できるようにします。このコマンドは、スクリプトとして実行する場合にオリジナル メニューに含まれるメニュー項目をリビルドするファイルを書き出します。ファイル名は、ユーザのマーキング メニューのプリファレンス ディレクトリからの相対位置で表されます。 このコマンドは、マーキング メニュー エディタ(Marking Menu Editor)のみで使用され、汎用的ではないので注意してください。 1 番目の引数は保存するメニューの名前、2 番目の引数はファイル名です。string | 保存されたファイルの名前です。 |
import maya.cmds as cmds # Create a window with two frames. # win = cmds.window(title='saveMenu Example') cmds.columnLayout() frame1 = cmds.frameLayout( h=90, l='Original Menu (LMB)' ) cmds.text( l='(click here)' ) cmds.setParent( '..' ) frame2 = cmds.frameLayout( h=90, l='Copy of Original (LMB)' ) cmds.text( l='(click here)' ) cmds.setParent( '..' ) # Create a menu. # menu1 = cmds.popupMenu( parent=frame1, b=1, mm=True ) cmds.menuItem( rp='N', l='Up' ) cmds.menuItem( rp='S', l='Down' ) cmds.menuItem( rp='E', l='Right' ) cmds.menuItem( rp='W', l='Left' ) cmds.menuItem( label='Warm', sm=True ) cmds.menuItem( l='Red' ) cmds.menuItem( l='Orange' ) cmds.menuItem( l='Yellow' ) cmds.setParent( '..', m=True ) cmds.menuItem( label='Cold', sm=True ) cmds.menuItem( l='Green' ) cmds.menuItem( l='Blue' ) cmds.menuItem( l='Indigo' ) cmds.menuItem( l='Violet' ) cmds.setParent( '..', m=True ) cmds.setParent( '..', m=True ) # Save the menu to a file. # result = cmds.saveMenu(menu1, 'menu_example') # Use the file to rebuild another instance of the menu. # menu1 = cmds.popupMenu( parent=frame2, b=1, mm=True ) maya.mel.eval( 'source \"' + cmds.internalVar(userMarkingMenuDir=True) + 'menu_example.mel\"' ) # Finish up. print ("The menu was saved in [" + cmds.internalVar(userMarkingMenuDir=True) + result + "]\n" ) cmds.showWindow( win )