2016-05-10 20 views
1

コマンドを編集するための正しい構文を書く方法がちょっと残っています。切り替え可能なラジオボタン(コマンドの編集)

私のradioOnとradioOffコマンドでは、ラジオボタンを有効または無効にするためのチェックボックスを有効/無効にします。

from functools import partial 
import maya.cmds as cmds 

def one(): 
    print '1' 

def two(): 
    print '2' 



winID = 'xx' 
if cmds.window(winID, exists=True): 
    cmds.deleteUI(winID) 


window = cmds.window(winID, sizeable = False, title="Resolution Switcher", widthHeight=(300, 100)) 

cmds.columnLayout() 
cmds.text (label = '') 
cmds.text (label = '') 
cmds.checkBoxGrp(cat = (1,'left', 20), ncb = 1, l1=' DISABLE', offCommand = partial(radioOn, a), onCommand = partial(radioOff, a)) 
a = cmds.radioButtonGrp(cat = [(1,'left', 90),(2, 'left', 100)], numberOfRadioButtons=2, on1 = 'one()' , on2 = 'two()') 
cmds.text (label = '') 

def radioOff (a, *args): 
    print 'radios off' 
    a(ed=True, enable=False) 

def radioOn (a, *args): 
    print 'radios on' 
    a(ed=True, enable=False) 


cmds.showWindow(window) 

私は、このようなhereを示すような例からアイデアを得ることを試みたが、 私はcmds.radioButtonGrp(a, ed=True, enable=False)を置くとき、それはちょうど新しいラジオボタンを作成し続け、ないフロートと例に示されたものとは違ってきましたフィールド。

最終行です - ラジオボタンがグレー表示され、チェックボックスをオンにするたびに無効にします。それについて - フロートフィールドと同じ方法でラジオボタンをグレーアウトすることは可能ですか?私はそれらを無効にすることによって、それらを解除不可能にすることに気がついた - しかし灰色ではない。

ありがとうございます。

答えて

0
from functools import partial 
import maya.cmds as cmds 

def one (*args): 
    print '1' 

def two (*args): 
    print '2' 

def radioSwitch (a, state, *args): 
    if state: 
     cmds.radioButtonGrp(a, e=True, enable=False) 
    else: 
     cmds.radioButtonGrp(a, e=True, enable=True) 

winID = 'xx' 
if cmds.window(winID, exists=True): 
    cmds.deleteUI(winID) 


window = cmds.window(winID, sizeable = False, title="Resolution Switcher", widthHeight=(300, 100)) 

cmds.columnLayout() 
cmds.text (label = '') 
cmds.text (label = '') 
cb_disable = cmds.checkBoxGrp(cat = (1,'left', 20), ncb = 1, l1=' DISABLE', offCommand = "" , onCommand = "") 
a = cmds.radioButtonGrp(cat = [(1,'left', 90),(2, 'left', 100)], enable=True, numberOfRadioButtons=2, on1 = one , on2 = two) 
cmds.checkBoxGrp(cb_disable, e=1, offCommand = partial(radioSwitch, a, False)) 
cmds.checkBoxGrp(cb_disable, e=1, onCommand = partial(radioSwitch, a, True)) 
cmds.text (label = '') 
cmds.showWindow(window) 
関連する問題