いくつかの項目中から 1 つだけ選びたい場合はラジオボタンを使用します。
ラジオボタンによって 2 種類のプリミティブ、NURBS の球体・キューブのうちのどちらかを作る GUI を作ってみましょう。
global proc makePrimitive1()
{
global string $radioCollection1;
string $selected;
$selected = `radioCollection -q -select $radioCollection1`;
if($selected == "radioButton1")
{
sphere;
}
else if($selected == "radioButton2")
{
nurbsCube;
}
}
string $windowName = `window -title "radioButton1"`;
columnLayout;
text -label "make Primitive";
string $radioCollection1 = `radioCollection`;
radioButton -label "Sphere" -select radioButton1;
radioButton -label "Cube" radioButton2;
button -label "OK" -command "makePrimitive1()";
button -label "Close" -command ("deleteUI " + $windowName);
showWindow;
import pymel.core as pm
def makePrimitive1():
selected = radioCollection1.getSelect()
if selected == radioButton1:
pm.sphere()
elif selected == radioButton2:
pm.nurbsCube()
with pm.window(title='radioButton1') as windowName:
with pm.columnLayout():
pm.text(label=u'プリミティブ作成')
radioCollection1 = pm.radioCollection()
radioButton1 = pm.radioButton(label=u'球体', select=True)
radioButton2 = pm.radioButton(label=u'立方体')
pm.button(label=u'作成', command='makePrimitive1()')
pm.button(label=u'閉じる', command=pm.Callback(pm.deleteUI, windowName.name())
import pymel.core
def makePrimitive1():
selected = radioCollection(radioCollection1, q=True, select=True)
if selected == 'radioButton1':
pm.sphere()
elif selected == 'radioButton2':
pm.nurbsCube()
windowName = pm.window(title='radioButton1')
pm.columnLayout()
pm.text(label=u'プリミティブ作成')
radioCollection1 = pm.radioCollection()
pm.radioButton('radioButton1', label=u'球体', select=True)
pm.radioButton('radioButton2', label=u'立方体')
pm.button(label=u'作成', command='makePrimitive1()')
pm.button(label=u'閉じる', command=('pm.deleteUI("' + windowName + '")'))