ユーザーの入力を保管するための永続的なツリー

www.altova.com このトピックを印刷 前のページ 1つ上のレベル 次のページ

ホーム >  チュートリアル > シンプルなデータベース >

ユーザーの入力を保管するための永続的なツリー

エンドユーザーの選択を反映するには、自動車製造業者名がリストされているコンボボックスを使用します。$PERSISTENT ツリーは、ノード内にユーザーの選択が保管できるように作成される必要があります。このノードの値は、DB  からのデータの選択が 後に製造業者の自動車を表示するために使用されます (次を参照: 次のセクション)。

 

$PERSISTENT ツリーとコンボボックスについてこのセクションでは説明されています。

 

$PERSISTENT ツリーを作成する

デザインが作成されると、 $PERSISTENT ツリー が自動的にページソースペイン内で Root と呼ばれるルート(またはドキュメント) と共に作成されます(下のスクリーンショットを参照 )。ユーザーの選択を保管するには、単一のノードのみが必要で、子要素または子属性要素のみが必要とされます。 Manufacturer と呼ばれる属性ノードを Root 要素に以下のように追加します。$PERSISTENT ツリー内から Root を選択し、ツールバー内の 属性の追加 アイコンをクリックして、子属性の追加 を選択します。 Manufacturer に属性の名前を変更します(下のスクリーンショットを参照)。

MTDDBPersistentTree

属性 Manufacturer には空白の文字列 ("") が開始の値として存在しています (スクリーンショットを参照)。これにより、 $PERSISTENT ツリーがリセットされると、 Manufacturer 属性が空白の文字列である値を持つようになります。

 

ユーザーの選択のためにコンボボックスを作成する

ページのデザインが以下のようになるようにデザインします:

MTDDBDesign01

この時点でのデザインは以下を含んでいますデザイン:

 

ラベル コントロールにはこのページのタイトルが表示されます。
静的テーブルコントロールには2つのセルが含まれています。
左側のテーブルセルには、文字 (Select manufacturer) を含んだラベル が含まれています。
右側のテーブルセルには、自動車製造業者のリストからエンドユーザーが選択するオプションが表示されるコンボボックスが含まれています。

 

ラベルテーブル、 と コンボボックス コントロールを追加するには、コントロールのペイン から対応するコントロールをドラッグします。コントロールのプロパティに関する詳細は、対応するコントロールの詳細を参照してください。

 

 

コンボボックスの設定

コンボボックスの設定には3つの重要な点があります:

 

コンボボックスが表示する値、および、ユーザーの選択として保管される値。これらの値を定義するには、コンボボックスをダブルクリックします。表示さえるコンボボックスの編集ダイアログ内で (下のスクリーンショット)、スクリーンショット内で表示されているように、値を追加します。 これらの値は、コンボボックスのドロップダウンリストのアイテム、および、対応する XML 値となります。

MTDDBComboBoxList

コンボボックスの選択を保管するためのページソースリンク。 $PERSISTENT/Root/Manufacturer 属性を ページソースペイン からコンボボックスにドラッグします。これにより、ページソースリンクが構築されます。この結果、エンドユーザーがコンボボックス内のドロップダウンリストのアイテムを選択すると、選択されたアイテムの対応する XML 値が $PERSISTENT/Root/Manufacturer ノードに保存されます。
コンボボックス内の新規のドロップダウンリストアイテムをエンドユーザーが選択すると、 $DB1 ツリー が再ロードされます (これは、 DB データソース からロードされたデータがコンボボックスの選択をベースに選択される必要があるからです。コンボボックスの値が変更されると、データの選択も変更される必要があります。 コンボボックスの選択をベースにする DB データの選択は、次のセクション で更に詳しく説明されています。 $DB1 ツリーを再ロードするには、再ロードアクションコンボボックス編集の完了時イベントに追加します。これはコンボボックスを右クリックして、編集の完了時のためのコントロールアクションを選択して行います。表示されるアクションダイアログでは、下のスクリーンショットに示されるように再ロードアクションを追加します。

MTDDBComboBoxActions

次に、選択された自動車製造業者の自動車名を DB からソリューションにロードし、テーブルに自動車名を表示します。

 


(C) 2019 Altova GmbH