ロールアウト ユーザ インタフェース コントロールの共通プロパティ

 

   

ユーザ インタフェースの作成 - クイック ナビゲーション

定義されたユーザ インタフェース コントロールはすべて、ロールアウトに各ローカル変数を持ち、コントロールを表す値はその変数に入ります。通常、これらの値には、チェック ボックスのオンとオフ、現在のスピナー値、リスト ボックスの項目などの項目に関連した設定情報があります。この情報は、項目値のさまざまな名前の付いたプロパティで利用できます。標準 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 以降 で使用可能です。

   

注:3ds Max の制限事項により、[作成](Create)パネルのピックボタンを使ってノードを指定することはできません(たとえば、スクリプト Geometry プラグイン内で)。この場合、オブジェクトを[修正](Modify)パネルで開くときに、ピックボタンを使用可能にする必要があります。

   

関連事項