Dropdownlist UI コントロール

dropdownlist コントロール は、ドロップダウンリストをロールアウトに配置するために使用します。クリックするとリストを開いてスクロールすることができます。再度クリックすると、リスト内の項目を選択することができます。

構文は次のようになります。

dropdownlist <name> [<caption>] [items:<array_of_strings>] [selection:<number>] [height:<number>] [tooltip:<string>]

dropdownList 項目の位置合わせの既定値は、#left です。

例:

    rollout ddl_test "Drop-Down List"
    (
      dropdownlist scale_dd "Scale" items:#("1/2", "1/4", "1/8", "1/16")
      on scale_dd selected i do
        format "You selected '%'!\n" scale_dd.items[i]
    )
    createDialog ddl_test

パラメータ

items:   

リスト内の項目であるテキスト文字列の配列です。

selection:

現在選択されているリスト内の項目番号。基数は 1 です。既定値は 1 です。

height:

項目行の数で示す dropdownlist 全体の高さです。既定値は 10 行です。dropdownlistN 個の項目を表示させるには、height を N+1 に設定します。

高さの最小値は 1 行です。

例:

    rollout test "Test"
    (
    dropdownlist dd "dd"\
    items:#("1","2","3","4","5","6","7","8","9","10") height:6
    label l "L"
    )
    createDialog test 200 200
    --You will get 5 items in the dropdown list.
    --Change height to 5, and you will get 4.
tooltip:

ドロップダウン リストの上にマウスを置いたときに表示されるツールチップを定義する文字列。3ds Max 2009 以降 で使用可能です。

プロパティ:

<dropdownlist>.items Array

項目列の配列を取得/設定します。

<dropdownlist>.selection Integer

現在選択されている項目番号。基数は 1 です。項目のリストが空配列の場合、値は 0 (ゼロ)になります。

<dropdownlist>.selected String

現在選択されている項目のテキストです。*items* 配列全体を再設定せずに、個々の項目を置換するよう設定できます。項目リストが空の配列の場合、この値は undefined です。

<dropdownlist>.width Integer

ドロップダウンリストの幅をピクセル単位で取得/設定します。

<dropdownlist>.height Integer

ドロップダウンリストの高さをピクセル単位で取得/設定します。(height: 作成パラメータで予期されている、「行数」とは異なります)

<dropdownlist>.tooltip String

dropdownlist のツールチップを取得/設定します。3ds Max 2009 以降 で使用可能です。

注:

MS Windows のツールチップ実装の制限により、ツールチップ文字列の最初の 80 文字だけが MAXScript に返されます。

ただし、任意の長さのツールチップを設定できます。

イベント

on <dropdownlist> selected <arg> do <expr>

ユーザがドロップダウン リストの項目を選択するときに呼び出されます。<arg> 引数には、新しい現在の選択項目番号が入ります。

注:

イベント ハンドラ関数 selected() は .selected プロパティと同じ名前ですが、効率的に機能を非表示にすることができます。その他のすべての UI コントロールのイベント ハンドラとは異なり、スクリプトの他の部分から機能を呼び出すことはできません。

回避策については、「MAXScript に関する質問と回答」の以下のエントリを参照してください。

dropdownList の Selected ハンドラを関数として呼び出す方法はありますか。

on <dropdownlist> rightClick do <expr>

ユーザがドロップダウン リスト コントロールを右クリックしたときに呼び出されます。

3ds Max 2010以降で使用可能です。