ポップアップメニューやドロップダウンリストは、リストから選択を行えるようにするためのオブジェクトです。ポップアップメニューに表示される項目は配列を用いて管理します。
“ポップアップメニュー”および“ドロップダウンリスト”という名前は、同じタイプのオブジェクトのことを意味します。“ポップアップメニュー”はMac OS の用語であり、“ドロップダウンリスト”はWindows の用語です。
次の例に示すように、これらのオブジェクトの外観はプラットフォームによって若干異なります:
Windows
Mac OS
配列とは、メモリー内の値の一覧のことで、配列の名前によって参照されます(配列とフォームオブジェクト を参照して下さい)。ポップアップメニュー・プルダウンリストは、クリックするとその配列を値の一覧として表示します。
このオブジェクトを初期化するには、値のリストを配列にロードします。複数の方法で初期化を行うことができます:
ユーザが行った選択内容をフィールドに保存する必要があれば、レコードの登録後に代入命令を実行します。これを行うには、オブジェクトメソッドに次のようなCase文を作成します:
プロパティリストのイベントテーマにおいて、作成したCase 文の中でテストする各イベントを選択します。
配列には常に有限数の項目が納められます。項目リストは動的であり、メソッドを用いて変更可能です。配列の項目は変更したり、並び替えや追加を行うことができます。
配列の作成と使用に関する詳細は4Dランゲージリファレンスの配列を参照してください。
ポップアップメニュー/プルダウンリストを、列挙型のフィールドまたは変数の管理のために使用したい場合、フィールドまたは変数をオブジェクトのデータソースとして直接参照することができます。これにより列挙型のフィールドまたは変数を容易に管理できるようになります。
注: 階層リストの場合、第一階層の値のみが表示・選択できます。
例えば、"White"、"Blue"、"Green"、"Red" という値のみを含む "Color" というフィールドがあった場合、これらの値を含むリストを作成し、それを "Color"フィールドを参照するポップアップメニューに関連付けることができます。こうすることによって、あとは自動的に4Dがカレントの値の入力や表示に関して管理してくれます。
ポップアップメニュー/ドロップダウンリストやコンボボックスをフィールドや変数と関連付けるには、オブジェクトの変数名のエリアにフィールドまたは変数の名前を直接入力するだけです:
![](../../picture/1349571/pict1349571.en.png)
フォームを実行すると、4D が自動的に入力と表示中のポップアップメニュー/コンボボックスの状態を管理してくれます。ユーザーが値を選択すると、その値はフィールドに保存され、このフィールドの値はフォームが表示されたときにポップアップメニューの中に表示されます:
![](../../picture/1349575/pict1349575.en.png)
注: この原理は、配列を用いてオブジェクトを初期化する方法と組み合わせることはできません。変数名のエリアにフィールド名を入力した場合は必ず選択リストを使用して下さい。
ポップアップメニュー/ドロップダウンリストを選択リストとフィールドに関連付けると、プロパティリスト内の「データソース」テーマ内にて関連付けのオプションを選択できるようになります。
このオプションにより、保存するデータのサイズを最適化できるようになります。詳細な情報に関しては、関連付け(値または参照番号)を参照して下さい。
ページ指定標準アクションをポップアップメニュー/ドロップダウンリストに割り当てることができます(プロパティリストの"アクション"テーマ)。このアクションを選択すると、4D はドロップダウンリストで選択されたオブジェクトの番号と一致するフォームのページを自動的に表示します。
例えばユーザーがリストの3 番目の項目を選択すると、4Dはカレントフォームの3 ページ目(存在する場合)を表示します。項目を選択した結果をプログラムで管理したい場合は動作なしを選択します。