セル型でコンボボックスを作成します。
セルを選択して[ホーム]リボンタブ -[セル型]のドロップダウンリストから「コンボボックス」を選択します。
選択したセルがコンボボックス型になります。コンボボックスに設定した内容が表示できるようにセルを結合したりセル幅を調整したりしてください。
右ペインでコンボボックスの設定をします。
右ペイン下部の[セル型]タブをクリックして、コンボボックスの設定を行います。
プロパティ名 |
説明 |
---|---|
コマンド |
値が変更された時に実行されるコマンドを設定します。この項目はリストビュー上のセル型では設定できません。 コマンド(通常)を参照してください。 |
セルのアクセス制御 |
ロールごとにそのセル型の表示/非表示、および有効/無効を設定します。詳細についてはセルのアクセス制御を参照してください。この項目はリストビュー上のセル型では設定できません。 |
リスト項目 |
「テーブルからデータを取得」を選択した場合、[未選択項目の追加]を選択することができます。 「<未選択>」などの文字列を表示して、該当する選択項目がない場合の処理ができます。 未選択項目として表示するテキストは指定することができます。 「ドロップダウンリストの表示項目」をクリックすると、コンボボックスのドロップダウンリストに複数の項目を表示するように設定できます。テーブルの関連付けを設定している場合は、他のテーブルの項目を指定することもできます(本ページ内の「複数列のコンボボックスを作成する」参照)。通常、ドロップダウンリストの幅はコンボボックス型セルの幅と同じです。本設定を使用した場合、リストが1,000行以下の場合には、項目の値に応じて列幅が自動調整され、ドロップダウンリストの幅はそれに合わせて変化します。しかし、リストが1,000行を超える場合にはパフォーマンス上の理由により列幅の自動調整は行われず、すべての列幅は100ピクセルに設定されます。本事象を回避するためには、ロードオンデマンド機能を使用し、初回に読み込む行数が1,000を超えないようにします。 [クエリー条件]をクリックすると、クエリー条件を設定できます(クエリー参照)。なお、クエリー条件によってコンボボックスの選択項目の絞り込み処理が行われるのは、アプリケーション実行時にユーザーがそのコンボボックスのドロップダウンボタンをクリックしたタイミングであることに注意してください。ページが読み込まれた段階ではクエリー条件の処理時は実行されていません。 [並べ替え条件]をクリックすると、テーブルからデータを取得する場合のリスト項目の並べ替え条件を設定できます(並べ替え参照)。 [値フィールド]と[表示フィールド]の組み合わせが一意であるデータのみが表示されます。たとえば、[表示フィールド]が同じ「りんご」であっても、[値フィールド]がそれぞれ「1」「2」と異なるレコードが存在する場合、ドロップダウンリストには2つの「りんご」が表示されます。ここに以下のようにテーブルの関連付けを行った関連フィールドを表示させることもできます。関連フィールドを使用する場合、テーブルの関連付けは、同一データベースでかつ同一インスタンス内のテーブル同士である必要があります。たとえば、Forguncyの内部データベースとSQL Server、Oracle Databaseなど外部のデータベース間で関連付けを行ったり、SQL Server同士でもデータベースが異なりインスタンスが同一でなかったりする場合は関連フィールドは使用できません。 |
既定値 |
数式やデータ連結、ユーザー入力で使用される値の既定値を指定します。数式を使用することもできます。詳細は数式の使用を参照してください。 |
日本語入力モード |
日本語入力IMEのON/OFFなどを設定します。モバイルページではこの項目は表示されず、設定できません。 |
絞り込み入力 |
ユーザーがコンボボックスに入力した値に一致する項目のみが表示される機能です。先頭一致か部分一致のどちらかを指定します。また、ひらがなとカタカナ、および英字の大文字と小文字を区別するオプションも用意されています。 |
ドロップダウンボタンの表示設定 |
ドロップダウンボタン(リスト右横の「▼」)の表示を切り替えます。 常に表示/非表示/フォーカス取得時に表示 リストビューの行テンプレートに設定されたコンボボックス型セルの場合、本設定が「常に表示」であってもアプリケーションの実行時にドロップダウンボタンが表示されるのは、セルがダブルクリック操作などにより編集状態となったときのみです。これは、リスビューにおいてコンボボックス型セルが表示されるのは編集状態のときだけであるという動作に基づくForguncyの仕様です。 モバイルページではこの項目は表示されず、設定できません。 |
透かし文字 |
未入力、または未選択の場合に表示する透かし文字を指定します。モバイルページではこの項目は表示されず、設定できません。 |
読み取り専用 |
読み取りのみで、値の入力や選択の変更はできません。 |
選択による入力のみ可 |
チェックするとキーボード等による値の入力はできず、ユーザーの操作はコンボボックスからの選択だけに限られます。モバイルページではこの項目は表示されず、設定できません(選択による入力にのみ対応)。 |
選択項目に存在する値のみ許可する |
「選択による入力のみ可」のチェックを外した状態でこの項目をチェックすると、コンボボックスのリスト項目にない文字列を入力したときに文字列が入力されず、コンボボックス内は空になります。 この項目をチェックした場合に入力可能な文字列は、テーブルからデータを取得する際は「表示フィールド」に指定したフィールドの文字列、テーブルからデータを取得しない際は「表示する値」に設定した文字列です。 モバイルページではこの項目は表示されず、設定できません。 注意: この設定でコンボボックス内が空になるのは、コンボボックスに手動で入力した場合のみです。 例えば、セルプロパティの設定コマンドからコンボボックスに対して値を設定した場合、それがリスト項目にない文字列だったとしても、HTMLの仕様上コンボボックスの値として設定でき、さらにコンボボックスの見た目は空の状態になります。 この状態でテーブルデータ更新コマンド等を利用してデータを保存すると、セルプロパティの設定コマンドで設定した値が保存されてしまいますのでご注意ください。 |
フォーカス取得時に値を全選択状態にする |
フォーカス取得時に自動的に値が全選択された状態となります。この項目はリストビュー上のセル型では設定できません。 |
ロードオンデマンド |
テーブルからデータを取得する設定を行っている場合に、コンボボックスに大量のデータ項目が一度に生成されないようにします。本設定を有効にした場合、500データ分の項目が最初に生成されます。スクロールして500データに達すると、次の100データ分の項目が生成されます。データの単位は行ではなくデータの個数であることに注意してください。コンボボックスのドロップダウンリストが2列の場合には50行ずつ生成されます。なお、本機能が有効であってもすべてのデータがサーバーから取得されます。サーバーからのデータの取得部分に時間を要している場合、本機能を使用しても読み込み時間の短縮には影響しないことに注意してください。 ロードオンデマンドが有効である場合、最後までスクロールさせてすべてのデータを読み込ませないと絞り込み入力の機能は動作しません。 |
必要に応じてデータ連結をします。
データ連結の方法については、データの連結を参照してください。
ヒント: 2つのコンボボックスを使って選択肢を絞り込む
コンボボックスAで値を選択すると、その値に関連する選択肢だけをコンボボックスBに表示する、ということがクエリーを使うとできます。
設定のしかた
テーブルを作成します。
コンボボックスを2つ作成します。
1つ目のコンボボックスには国名を表示するようにセル型を設定します。
2つ目のコンボボックスには都市名が表示されるように設定して[クエリー条件]をクリックします。
クエリー条件を以下のように設定します。
[国]フィールドの値を1つ目のコンボボックスの値で絞り込むように設定します。
1番目のコンボボックスで国名を選択すると、その値によって都市名が絞り込まれて2番目のコンボボックスに表示されます。
コンボボックスのドロップダウンリストに複数の項目を表示させることができます。
複数列のコンボボックスは、モバイルページでは設定できません。
マスター詳細関係の2つのテーブルを作成します。
ページを作成してコンボボックスを作成します。
コンボボックスのリスト項目で、「値フィールド」に詳細テーブルの「ID」を設定し、「表示フィールド」に「商品」を設定します。
「ドロップダウンリストの表示項目」をクリックして以下のように設定します。
詳細テーブルのフィールドは「ヘッダー名」で変更できます。
「価格」の表示形式を設定します。
ドロップダウンリストに複数の項目の表示されるコンボボックスが作成されます。