ジャンプ先: 概要. 戻り値. フラグ. Python 例.

概要

dockControl( [name] , [allowedArea=string], [annotation=string], [area=string], [backgroundColor=[float, float, float]], [closeCommand=script], [content=string], [defineTemplate=string], [docTag=string], [dockStation=string], [dragCallback=script], [dropCallback=script], [enable=boolean], [enableBackground=boolean], [enablePopupOption=boolean], [exists=boolean], [fixedHeight=boolean], [fixedWidth=boolean], [floatChangeCommand=script], [floating=boolean], [fullPathName=boolean], [height=int], [highlightColor=[float, float, float]], [isObscured=boolean], [label=string], [manage=boolean], [moveable=boolean], [noBackground=boolean], [numberOfPopupMenus=boolean], [parent=string], [popupMenuArray=boolean], [preventOverride=boolean], [r=boolean], [retain=boolean], [sizeable=boolean], [splitLayout=string], [state=string], [useTemplate=string], [visible=boolean], [visibleChangeCommand=script], [width=int])

注: オブジェクトの名前と引数を表す文字列は、カンマで区切る必要があります。これはシノプシスに示されていません。

dockControl は、取り消し可能、照会可能、および編集可能です。

ドック可能なコントロールを作成します。これはツール パレットまたはユーティリティ ウィンドウとも呼ばれます。ドック コントロールは、メイン ウィンドウの中央コントロールの周囲のドック領域に配置される補助的なウィンドウです。ドック ウィンドウは、現在の領域より内側へ移動したり、新しい領域へ移動したり、あるいはフロート状態にする(例: 固定しない)ことができます。ドック コントロールはタイトルバーと内容領域からなります。タイトルバーにはドック コントロール ウィンドウのタイトル、フロート ボタン、閉じるボタンが表示されます。ドック コントロールの状態に応じて、フロート ボタンと閉じるボタンはどちらかが無効になるか、または全く表示されません。

戻り値

stringコントロールへのフル パス名

照会モードでは、戻り値のタイプは照会されたフラグに基づきます。

フラグ

allowedArea, annotation, area, backgroundColor, closeCommand, content, defineTemplate, docTag, dockStation, dragCallback, dropCallback, enable, enableBackground, enablePopupOption, exists, fixedHeight, fixedWidth, floatChangeCommand, floating, fullPathName, height, highlightColor, isObscured, label, manage, moveable, noBackground, numberOfPopupMenus, parent, popupMenuArray, preventOverride, r, retain, sizeable, splitLayout, state, useTemplate, visible, visibleChangeCommand, width
ロング ネーム(ショート ネーム) 引数タイプ プロパティ
allowedArea(aa) string createqueryeditmultiuse
ドック コントロールが配置される領域です。有効な値は「top」、「left」、「bottom」、「right」、「all」です。既定は「all」です。
annotation(ann) string createqueryedit
コントロールに文字列値で注釈を付けます。
area(a) string createqueryedit
このドック コントロールの最初のドック領域です。これは必須フラグです。
backgroundColor(bgc) [float, float, float] createqueryedit
コントロールのバックグラウンド カラーです。引数は、赤、緑、青のカラー成分に対応しています。それぞれの成分の値は、0.0~1.0 です。
backgroundColor を設定する場合、enableBackground を false に指定していない限り、バックグラウンドは自動的に有効になります。
closeCommand(cc) script createedit
ドック コントロールが閉じた後に、スクリプトが実行されます。
content(con) string createquery
コントロールの名前で、このドック コントロールの内容を示します。これは必須フラグです。
defineTemplate(dt) string create
他の任意のフラグと引数を解析し、かつ引数で指定したコマンド テンプレートに追加するモードに、コマンドのモードを変更します。templateName が現在のテンプレートとして設定されていれば、その後コマンドが実行されるたびに、この引数が既定の引数として使用されます。
docTag(dtg) string createqueryedit
コントロールにドキュメンテーション フラグを追加します。ドキュメンテーション フラグは、階層のようなディレクトリ構造になっています。例: -dt render/multiLister/createNode/material
dockStation(ds) string create
ウィンドウをドッキングできるコントロールの名前です。設定されていない場合は、メイン ウィンドウになります。
dragCallback(dgc) script createedit
中マウス ボタンを押すとコールされるコールバックを追加します。MEL バージョンのコールバックの書式は次のとおりです。

global proc string[] callbackName(string $dragControl, int $x, int $y, int $mods)

proc はドロップ先に転送される文字配列を返します。規則により、配列の先頭文字列はユーザ設定可能なメッセージ タイプを表しています。アプリケーションで定義されたドラッグ元のコントロールは、このコールバックを無視する可能性があります。$mods で、キー モディファイアである CTL と SHIFT をテストできます。有効な値は、0 == モディファイアなし、1 == SHIFT、2 == CTL、3 == CTL + SHIFT です。

Python でも同様ですが、コールバックの指定方法が 2 つあります。お勧めの方法は、引数として Python 関数オブジェクトを渡すことです。この場合、Python コールバックの書式は次のようになります。

def callbackName( dragControl, x, y, modifiers ):

この引数の値は、上記の MEL バージョンの引数と同じです。

Python でコールバックを指定するもう 1 つの方法では、実行する文字列を指定します。この場合、Python の標準的なフォーマット演算子を介して文字列に値が代入されます。このフォーマットの値は、キー「dragControl」、「x」、「y」、「modifiers」と共に辞書で渡されます。dragControl の値は文字列で、その他の値は整数です(コールバック文字列の例: 「print '%(dragControl)s %(x)d %(y)d %(modifiers)d'」)。

dropCallback(dpc) script createedit
ドラッグ&ドロップ操作をドロップ位置で解放したときにコールされるコールバックを追加します。MEL バージョンのコールバックの書式は次のとおりです。

global proc callbackName(string $dragControl, string $dropControl, string $msgs[], int $x, int $y, int $type)

proc は、ドラッグ元から転送される文字配列を受け取ります。msgs 配列の先頭文字列はユーザ定義のメッセージ タイプを表します。アプリケーションで定義されたドロップ先のコントロールでは、このコールバックが無視されることがあります。$type の値は、1 == 移動、2 == コピー、3 == リンクのいずれかです。

Python でも同様ですが、コールバックの指定方法が 2 つあります。お勧めの方法は、引数として Python 関数オブジェクトを渡すことです。この場合、Python コールバックの書式は次のようになります。

def pythonDropTest( dragControl, dropControl, messages, x, y, dragType ):

この引数の値は、上記の MEL バージョンの引数と同じです。

Python でコールバックを指定するもう 1 つの方法では、実行する文字列を指定します。この場合、Python の標準的なフォーマット演算子を介して文字列に値が代入されます。このフォーマットの値は、キー「dragControl」、「dropControl」、「messages」、「x」、「y」、「type」と共に辞書で渡されます。dragControl の値は文字列で、その他の値は整数です(コールバック文字列の例: 「print '%(dragControl)s %(dropControl)s %(messages)r %(x)d %(y)d %(type)d'」)。

enable(en) boolean createqueryedit
コントロールの有効、無効です。既定では true に設定されていて、コントロールは有効になっています。false を指定するとコントロールはグレー表示になって無効になります。
enableBackground(ebg) boolean createqueryedit
コントロールのバックグラウンド カラーを有効にします。
enablePopupOption(epo) boolean createqueryedit
UI 要素のポップアップ メニューのドック コントロールのメニュー オプションが有効になっているかどうかを示します。
exists(ex) boolean create
指定したオブジェクトが存在するかどうかを返します。他のフラグは無視されます。
fixedHeight(fh) boolean createqueryedit
ドック コントロール高さのサイズをインタラクティブに変更できるようにするかどうかを指定します。
fixedWidth(fw) boolean createqueryedit
ドック コントロール幅のサイズをインタラクティブに変更できるようにするかどうかを指定します。
floatChangeCommand(fcc) script createedit
スクリプトは、ドック ウィジェットのフロート状態が変更されたときに実行されます。
floating(fl) boolean createqueryedit
ドック ウィジェットをフロート状態にするかどうかを定義します。フローティング ドック ウィジェットは、メイン ウィンドウに固定されずに、メイン ウィンドウの「最上部」に独立したウィンドウとして表示されます。
fullPathName(fpn) boolean query
すべての親を含むウィジェットのフル パス名を返します。
height(h) int createqueryedit
コントロールの高さです。コントロールは親のレイアウトの条件によって無効にされない限り、このサイズを保持しようとします。
highlightColor(hlc) [float, float, float] createqueryedit
コントロールのハイライト カラーです。引数は、赤、緑、青のカラー成分に対応しています。それぞれの成分の値は、0.0~1.0 です。
isObscured(io) boolean query
コントロールが実際に表示されるかどうかを返します。コントロールは、次の場合に隠れた状態になります。非表示の場合、別のコントロールで(完全に、または部分的に)ブロックされた場合、コントロールまたは親のレイアウトを制御できない場合、あるいはコントロールのウィンドウが非表示またはアイコン化されている場合。
label(l) string createqueryedit
ラベル テキストです。既定のラベルはコントロールの名前です。
manage(m) boolean createqueryedit
コントロールの状態を管理します。管理されていないコントロールは表示されず、画面の領域も占有しません。既定では、コントロールは管理できるように作成されます。
moveable(mov) boolean createqueryedit
ドッグ コントロールをドッキング解除/再ドッキング可能にするかどうかをコントロールします。
noBackground(nbg) boolean createedit
コントロールのバックグラウンドをクリア/リセットします。バックグラウンドは、true を渡すと一切描画されず、false を渡すと描画されます。このフラグの状態は、このコントロールの子に継承されます。
numberOfPopupMenus(npm) boolean query
このコントロールにアタッチされるポップアップ メニューの数を返します。
parent(p) string createquery
コントロールの親のレイアウトです。
popupMenuArray(pma) boolean query
このコントロールにアタッチされる全ポップアップ メニューの名前を返します。
preventOverride(po) boolean createqueryedit
true の場合、コントロールのコントロールは親のレイアウトの条件によって無効にされ右マウス ボタン メニューを使用したコントロール アトリビュートのオーバーライドは無効です。
r(r) boolean queryedit
ドック ウィジェットが表示されているかどうか、そしてフローティングになっているか、あるいはドック ウィジェット領域の上部にあるかどうかを示します。
retain(ret) boolean createqueryedit
ウィンドウを閉じたときに、ウィンドウとそのコンテンツを削除するかどうかを制御します。既定は true です。この値が false に設定されている場合を除き、ウィンドウを閉じても、ウィンドウとそのコンテンツは保持されます。
sizeable(s) boolean createqueryedit
ドック コントロール幅のサイズをインタラクティブに変更できるようにするかどうかを指定します。非推奨です!! 代わりに fixedWidth フラグを使用してください。
splitLayout(sl) string create
2 つのウィンドウを単一のドッキング領域に追加すると、既定では両方がタブ化されます。splitLayout の値を設定すると、同じ領域の別のコントロールの横に配置できるようになります。フラグの引数は、分割の方向を制御します。有効な値は、「horizontal」または「vertical」です。
state(st) string createqueryedit
このフラグを照会すると、ドック コントロール状態情報を含む文字列が返されます。この文字列はバイナリ文字列の 16 進数表現であり、可読形式ではありません。ただし、optionVar コマンドを使用してこの文字列を保存し、ロードすることにより、Maya のセッション間でドック コントロールの状態を復元することができます。
useTemplate(ut) string create
コマンドに、現在以外のコマンド テンプレートの使用を強制します。
visible(vis) boolean createqueryedit
コントロールの可視の状態です。既定では、コントロールは表示されます。コントロールの実際の外見も、その親レイアウトの可視の状態によって異なることに注意してください。
visibleChangeCommand(vcc) script createqueryedit
コントロールの可視の状態が変更されたときに実行されるコマンドです。
width(w) int createqueryedit
コントロールの幅を指定します。コントロールは親のレイアウトの条件によって無効にされない限り、このサイズを保持しようとします。

フラグはコマンドの作成モードで表示できます フラグはコマンドの編集モードで表示できます
フラグはコマンドの照会モードで表示できます フラグに複数の引数を指定し、タプルまたはリストとして渡すことができます。

Python 例

import maya.cmds as cmds

myWindow = cmds.window()
buttonForm = cmds.formLayout( parent = myWindow )
cmds.button( parent = buttonForm )
allowedAreas = ['right', 'left']
cmds.dockControl( area='left', content=myWindow, allowedArea=allowedAreas )