次のセクションでは、製品フォームの使用方法とプログラム方法を示します。 Northwind 2.0 Starter Edition データベースで簡単に調べることができるように、オブジェクト名が用意されています。
製品フォームは、ベスト プラクティスを強調する簡単な方法で設計されています。 実際のアプリケーションと同様に、製品インベントリを管理するための高度な方法がいくつかあります。
メイン メニュー (frmMainMenu) には、製品の一覧 (sfrmMainMenu_ProductList) とハイパーリンクを開き、各製品の製品詳細フォーム (frmProductDetail) を開く Products コマンド ボタンがあり、次のアクション ボタンがあります。
-
[ 製品の追加] ボタンをクリックして、新しい空の製品フォームを開きます。
-
[ ファイルにエクスポート] ボタンをクリックして、Excel、.pdf など、ユーザーが選択したファイルに製品リストを送信します。
[製品の詳細] フォーム (frmProductDetail) で、[製品の削除] ボタンを使用して未使用 の製品を削除 できます。
次の情報は、フォームの開発方法に関する重要なポイントをまとめたものです。
製品の詳細 (frmProductDetail) は、 RecordSource プロパティで指定された単純なクエリ qryProductDetail からデータを取得します。 単純な 1 テーブル クエリにデータ入力フォームを基にすることをお勧めします。
製品注文サブフォーム (sfrmProductDetail_OrderList) の上にあるテキスト ボックス txtOrderLabel に注目してください。 これは、現在の変数値を利用してフォームの表示をカスタマイズする良い例です。
これと他の詳細フォームのもう 1 つの興味深い機能は、ポップアップして移動できることです。 これは、次の 2 つの方法のいずれかで実現できます。
-
フォーム PopUp プロパティを "はい" に設定します。
-
ダイアログとしてフォームを開く: (マクロまたはコードを使用して) フォームを開くときは、 Window Mode 引数を "acDialog" として指定します。 ダイアログとしてフォームを開くと、そのプロパティが "いいえ" に設定されている場合、フォームの Modal プロパティがオーバーライドされることに注意してください。
すべてのフォームに モーダル プロパティがあります。 このプロパティが "はい" に設定されている場合、フォームが開いている間、他のフォームと対話することはできません。 ウィンドウ モード "acDialog" を使用してマクロまたはコードを使用してフォームを開くと、フォームの Modal プロパティに関係なく、フォームは自動的に モーダル になります。
また、[製品の 説明 ] テキスト ボックスで リッチ テキストが有効になっていることにも注意してください。 つまり、テキスト ボックス内の異なるフォントと色を使用してテキストを表示できます。 製品詳細フォームの ポップアップ モードは "はい" であるため、テキスト形式の ショートカット メニュー バー は使用できません。 Wordドキュメントからリッチ テキストを貼り付けたり、フォームの Popup プロパティを一時的に "いいえ" にリセットしたりできます。
ctlProductOrders という名前のサブフォーム コントロールの製品詳細フォームの製品注文サブフォーム (sfrmProductOrders) は、注文された製品の 3 テーブル クエリにバインドされます。 このサブフォームの行は、サブフォーム コントロールの LinkMasterFields プロパティと LinkChildFields プロパティを設定することで、現在の製品に対してフィルター処理されます。