いくつかの項目中から 1 つだけ選びたい場合はラジオボタンを使用します。
ラジオボタンによって 2 種類のプリミティブ、NURBS の球体・キューブのうちのどちらかを作る GUI を作ってみましょう。
import pymel.core as pm def makePrimitive1(rc1): sel = rc1.getSelect() if sel == 'radioButton1': pm.sphere() elif sel == 'radioButton2': pm.nurbsCube() def makeRadioWindow(): with pm.window(title='radioButton1') as wn: with pm.autoLayout(): pm.text(label=u'プリミティブ作成') rc1 = pm.radioCollection() pm.radioButton('radioButton1', label=u'球体', select=True) pm.radioButton('radioButton2', label=u'立方体') pm.button(label=u'作成', command=pm.Callback(makePrimitive1, rc1)) pm.button(label=u'閉じる', command=pm.Callback(pm.deleteUI, wn.name())) makeRadioWindow()
import pymel.core
def makePrimitive1():
sel = radioCollection(radioCollection1, q=True, select=True)
if sel == 'radioButton1':
pm.sphere()
elif sel == 'radioButton2':
pm.nurbsCube()
def makeRadioWindow():
wn = pm.window(title='radioButton1')
pm.autoLayout()
pm.text(label=u'プリミティブ作成')
rc1 = pm.radioCollection()
pm.radioButton('radioButton1', label=u'球体', select=True)
pm.radioButton('radioButton2', label=u'立方体')
pm.button(label=u'作成', command=pm.Callback(makePrimitive1, rc1))
pm.button(label=u'閉じる', command=pm.Callback(pm.deleteUI, wn.name())
makeRadioWindow()