●概要●
Access2000にはメニュー用フォームビルダというメニューフォームを簡単に作成するためのアドインツールがあります。このツールを使用すると簡単にメニューを作成することができますが、使用方法に若干クセがあります。
今回はメニュー用フォームビルダの使い方を説明します。
●手順●
- メニューバーの[ツール]−[データベースユーティリティ]をポイントし、サブメニューの[メニュー用フォームビルダ]を選択します。
- 以下のメッセージが出てきますので、とりあえず[はい]をクリックして先に進みます。
- 下記のメニュー用フォームビルダダイアログが開いたら、[閉じる]をクリックして一度ダイアログを閉じます。
- データベースウィンドウを確認すると、[Switchboard Items]テーブルと[Switchboard]フォームが作られています。先程の(1)で[はい]を選択したため、雛形として作られたオブジェクトです。特に[Switchboard Items]テーブルの構造を変更すると、メニューが正常に起動しなくなりますので注意して下さい。
- もう一度メニューバーの [ツール]−[データベースユーティリティ] をポイントし、サブメニューの [メニュー用フォームビルダ] を選択します。既に雛型がありますので、今度はメッセージは表示されません。
- ここから本格的にメニューを作成していく訳ですが、やみくもに進めていくことは望ましくありません。メニュービルダによるメニューは、基本的に以下のような構造になっています。
それぞれのメニューの意味を説明します。
- 別のメニューへ移動する
他のサブメニューやメインメニューに移動します
- 追加モードでフォームを開く
既存のフォームを追加モードで開きます
- 編集モードでフォームを開く
既存のフォームを編集モードで開きます
- レポートを開く
既存のレポートをプレビューで開きます
- メニューの編集
メニュー用フォームビルダダイアログを開きます
- データベースの終了
カレントデータベースを終了しますしかし、Access自体は終了しません
- マクロの実行
既存のマクロを実行します
- モジュールの実行
既存のモジュールを実行します実行できるモジュールはPublic Functionに限定されます
今回は以下のようなサンプルを作成してみます。
----------------------------------------------------
[メインメニュー] [サブメニュー]
マスタメンテナンス-----┬----得意先マスタメンテ
└----メインメニューに戻る
通常業務 -----┬----納品伝票
└----メインメニューに戻る
データベース終了
----------------------------------------------------
- すでに開いているメニュー用フォームビルダダイアログの [編集] ボタンをクリックすると、 [メニュー用フォームの編集] が開きます。そこで [メニュー名] の「Main Seitchboard」の文字を削除し、「メインメニュー」と入力します。
- [メニュー項目の編集] ダイアログが開くので、 [文字列] ボックスに「マスタメンテナンス」と入力し、[コマンド] ボックスには「別のメニューに移動する」を選択します。現段階では別のメニューを作成していないので、とりあえず [OK] を押下しておきます。
- 同じ要領で [通常業務] メニューを作成しておきます。
- [データベースの終了] メニューを作成します。同じように [メニュー用フォームの編集] ダイアログで [新規] ボタンを押し、[文字列] には「データベース終了」、[コマンド] には「データベースの終了」をそれぞれ入力します。
これでメインメニューの項目の3つが出来ました。
次の作業のため、[メニュー用フォームの編集] は閉じておきます。
- 続いて [得意先マスタメンテ] メニューを作成します。[メニュー用フォームビルダ] ダイアログで [新規] ボタンを押すと、サブメニューを作成することが出来ます。ここで、サンプルのサブメニューである [マスタメンテナンス] と [通常業務]サブメニューを作成しておきます。
- メインメニューの項目作成と同じ要領で、サブメニューのメニュー項目を作成していきます。今回はサンプルですので、実際のメニュー項目には適当なフォームを選択して下さい。
- 8.と9.で作成したメインメニューの項目は、サブメニューが正しく登録されていませんので、これを正しく設定し直します。
- メニューが完成しました。
[Switchboard] フォームを開き、3枚のメニューを相互に行き来でき、それぞれのメニュー項目が正常に機能していることを確認して下さい。
●詳細●
サンプルではメニューの階層構造を分かりやすくするため、「メインメニュー⇒ サブメニュー」という順番でメニューを作成しました。
しかし、実際にはサブメニューが無いとメインメニューを正確に作れないため、ある程度の構造を理解したら「サブメニュー ⇒ メインメニュー」という順番でメニューを作っていったほうが良いでしょう。