ここでは pm.formLayout() と、
pm.tabLayout() の使用方法を練習してみましょう。
pm.formLayout() はレイアウトの中で最も自由がきくもので、
ウインドウの上下左右からの絶対位置や、
他の部品からの相対位置によって部品を配置することができます。
pm.tabLayout() はタブを作成することができます。
この関数を実行すると、
それ以降の部品・レイアウトはタブグループになり、 1 つのタブになってゆきます。
まず、pm.formLayout() によってタブの部分と 閉じる ボタンを配置し、pm.tabLayout() によって A・B ボタンのあるタブと C・D ボタンのあるタブを切替えることができるようにしてみましょう。
import pymel.core as pm with pm.window(title='formLayout1') as windowName: with pm.formLayout() as form: with pm.tabLayout() as tabs: with pm.columnLayout() as tab1: pm.button(label='A') pm.button(label='B') with pm.columnLayout() as tab2: pm.button(label='C') pm.button(label='D') tabs.setTabLabel([tab1, u'タブ1']) tabs.setTabLabel([tab2, u'タブ2']) form.attachForm(tabs, 'top', 0) form.attachForm(tabs, 'left', 0) form.attachForm(tabs, 'right', 0) form.attachForm(tabs, 'bottom', 30) closeButton = pm.button(label=u'閉じる', command=pm.Callback(pm.deleteUI, windowName.name())) form.attachForm(closeButton, 'bottom', 0) form.attachForm(closeButton, 'left', 0) form.attachForm(closeButton, 'right', 0) form.attachControl(closeButton, 'top', 2, tabs)
import pymel.core as pm
with pm.window(title='layout5') as windowName:
form = pm.formLayout()
with pm.tabLayout() as tabs:
tabs.setTabLabel([tab1, u'タブ1'])
tabs.setTabLabel([tab2, u'タブ2'])
form.attachForm(tabs, 'top', 0)
form.attachForm(tabs, 'left', 0)
form.attachForm(tabs, 'right', 0)
form.attachForm(tabs, 'bottom', 30)
closeButton = pm.button(label=u'閉じる', command=pm.Callback(pm.deleteUI, windowName.name()))
form.attachForm(closeButton, 'bottom', 0)
form.attachForm(closeButton, 'left', 0)
form.attachForm(closeButton, 'right', 0)
form.attachControl(closeButton, 'top', 2, tabs)