定義されたユーザ インタフェース コントロールはすべて、ロールアウトに各ローカル変数を持ち、コントロールを表す値はその変数に入ります。通常、これらの値には、チェック ボックスのオンとオフ、現在のスピナー値、リスト ボックスの項目などの項目に関連した設定情報があります。この情報は、項目値のさまざまな名前の付いたプロパティで利用できます。標準 MAXScript プロパティ アクセスを使用してこれらの値の読み込みや設定を行います。
例: | |
---|---|
frab_x.enabled = true |
frab_x スピナーを使用可能にします。 |
foo.text = "Don't do it" |
foo ボタン テキストを設定します。 |
first_item = baz.items[1] |
リストボックス baz から項目リストを入手します。 |
$bar.pos.x = x_spinner.value |
スピナー x_spinner から現在の値を入手します。 |
caption
以外のすべてのユーザ インタフェースの共通プロパティ(ラベル文字列値はキャプションとして使用)は、ユーザ インタフェース項目を構成するときパラメータとして指定できます。
例:
button foo "You Cannot Press Me!" enabled:false
<ui_item>.caption String
このプロパティの意味は、特定のユーザ インタフェース項目のタイプによって異なります。ユーザ インタフェース項目にキャプションがある場合、このプロパティはキャプションの文字列を含みます。各種のボタンのタイプの場合、プロパティはボタン内のテキストです。キャプションの既定値は、項目定義内で指定したラベル文字列です。
<ui_item>.text String
edittext
および combobox
以外のすべてのユーザ インタフェース項目の場合、.text
プロパティは .caption
プロパティのエイリアスになります。
edittext
および combobox
ユーザ インタフェース項目の場合は、編集ボックス内のテキストになります。
edittext
ユーザ インタフェース項目の text
プロパティ値の既定値は NULL 文字列("")です。
combobox
ユーザ インタフェース項目の text
プロパティ値の既定値は、選択した項目のテキストです。
3ds Max 7 以降では、.text
プロパティが個別に定義されていないすべてのロールアウト コントロールについて、.text
プロパティは .caption
プロパティと 実際には同じになります。
ラベルのテキストを設定することは、ラベルのキャプションを設定することと同じです。以前のリリースでは、テキストを設定しても UI は更新されず、内部 .caption
値が更新されていました。
<ui_item>.enabled Boolean default: true
ロールアウトを最初に開いたときに項目の使用が可能かどうかを設定します。使用不可に設定した項目は、ロールアウト内では使用できません。既定では、すべての項目が使用可能になっているため、一般にこのパラメータを使用して、初期状態ではユーザのアクセスを制限する必要のある項目を使用禁止にします。たとえば、シーン オブジェクトのプロパティを変更するスピナーがあり、ロールアウトの pickbutton
を使用してユーザがオブジェクトを選択するまでこれを変更できないようにする場合などが考えられます。この場合、次の例に示すように、その定義でスピナーを使用禁止にし、オブジェクトが選択された後に使用可能にすることになります。
例:
spinner frab_x "Frabulate x-axis:" range:[0,100,0] enabled:false ... frab_x.enabled=true
<ui_item>.pos Point2 default: varies
これによりユーザ インタフェース項目はロールアウト内で固定の[x,y]ピクセル位置に強制的に配置されます。[0,0]は左上のコーナーです。
<ui_item>.visible
false
に設定すると、UI 項目は非表示になり、無効になります。
例:
rollout test "test" ( button b1 "b1" on b1 pressed do print "b1" button b2 "b2" on b2 pressed do b1.visible = not b1.visible ) createdialog test --Pressing the 'b2' button hides and unhides the b1 button
<ui_item>.hwnd Integer, read-only
コントロールのロールアウトが開いている場合は、そのロールアウトの HWND ウィンドウ ハンドルの配列を格納します。コントロールのロールアウトが閉じている場合は空の配列になります。
3ds Max 2011 以降 で使用可能です。