移動先: 概要 戻り値 フラグ MEL の例

概要

connectControl [-fileName] [-index uint] [-preventOverride boolean] string attribute...

connectControl は「元に戻す」が可能、「照会」が不可能「編集」が不可能です。

このコマンドは、1 つまたは複数のディペンデンシー ノードのアトリビュートの 1 番目の引数として指定された UI ウィジェットをアタッチします。このアトリビュートまたはノードは最初から存在している必要はなく、必要に応じてルックアップされます。フラグが指定されていない場合、このコマンドは次のようなコントロールに対して有効です。floatField、floatScrollBar、floatSlider、intField、intScrollBar、intSlider、floatFieldGrp、intFieldGrp、checkBox、radioCollection、optionMenu。index フラグと共に使用すると、その他のすべてのグループの個々のコンポーネントで機能します。

このコマンドは、コントロールと(最初に指定した)アトリビュートの双方向コネクションを設定します。この最初のアトリビュートが変更された場合、コントロールの値も一致するよう適切に更新されます。

まとめ: コントロールを変更すると、すべてのコネクトしたアトリビュートも変更されます。コントロールにアタッチされた最初のアトリビュートを変更すると、そのコントロールは変更されます。

注: connectControl コマンドの発行時にアトリビュートが存在しなければ、双方コネクションは確立されません。その後、そのコントロールを使用した時点でコネクションが確立されます。

connectControl を radioCollections と optionMenus と共に効果的に使用するには、radioButton と menuItem ごとに 1 つのデータをアタッチする必要があります。このデータ(整数)は、radioButton コマンドや menuItem コマンドで data フラグを使用してアタッチできますこのボタン/項目が選択されると、アトリビュートはそのデータの値に設定されます。アトリビュートが変更された場合、その集合(あるいは optionMenu)は、新規のアトリビュート値と一致する項目に切り替わります。一致する項目がない場合は、変更されないままとなります。

コネクション機能(とその他の機能)が組み込まれた特別なコントロールがいくつかあります。attrFieldSliderGrp、attrFieldGrp と attrColorSliderGrp を参照してください。 これらのクラスは、connectControl より簡単に使用することができます。

戻り値

なし

フラグ

fileName, index, preventOverride
ロング ネーム(ショート ネーム) 引数型 プロパティ
-index(-in) uint create
このフラグで、多数の異なるコントロールを含むグループから、サブコントロールを見つけることができます。 たとえば、floatFieldGrp の 1 つのフィールドをコネクトすることができます。この場合、存在する可能性のあるテキスト ラベルを含む、グループのひとつひとつのメンバーを数に入れなければなりません。たとえば、ラベルの付いたチェック ボックスのグループがあるとすると、そのラベルはインデックス 1、そして最初のチェック ボックスはインデックス 2 と数えられます(インデックスは 1 ベースです)。
-fileName(-fi) create
このフラグによって、コネクションはファイル名として扱われ、内部から外部へのファイル名表示の変換は、データがコピーされる際に行われます。これは Tfield コントロールへのコネクションのみにあてはまります。
-preventOverride(-po) boolean create
true の場合、コントロールのコントロールは親のレイアウトの条件によって無効にされ右マウス ボタン メニューを使用した コントロール アトリビュートのオーバーライドは無効です。

: コマンドの作成モードで使用可能なフラグ : コマンドの編集モードで使用可能なフラグ
: コマンドの照会モードで使用可能なフラグ : 1 つのコマンドで複数回使用可能なフラグ

MEL の例

{
    string $sphereNames[] = `sphere`;
    string $sphereName = $sphereNames[0];
    string $window = `window`;
    columnLayout;
    text -l "X Value:";
    floatField xx;
    connectControl xx ($sphereName+".tx");
    text -l "Visibility";
    checkBox vis;
    connectControl vis ($sphereName+".visibility");
    floatFieldGrp -l "Rotation:" -numberOfFields 3 rot;
    // index 1 would be the text label
    connectControl -index 2 rot ($sphereName+".rx");
    connectControl -index 3 rot ($sphereName+".ry");
    connectControl -index 4 rot ($sphereName+".rz");
    showWindow $window;
}

// Connecting two attributes to a single control
{
    window;
    columnLayout;
    floatSlider slider;
    showWindow;

    polySphere;
    polyCube;
    move 0 2 0;
    connectControl slider pCube1.tx pSphere1.tx;
}