開いているフォームをまとめて閉じるには
複数のフォームが開かれている場合に、個別に閉じたり、フォーム名を指定して閉じるのは効率が
良くありません。
そこで開かれているフォームを自動で調べて、全てのフォームをまとめて閉じるようにします。
- (ポイント)
- Formsコレクションで開いているフォームの数を調べる(フォームは開いた順に番号を持っている)
- 大きな番号を持っているフォームから閉じてゆく(先頭から閉じるとフォーム番号がシフトしてしまう)
- Forステートメントでフォームの数だけCloseメソッドを繰り返す
- 他の場面でも使えるように標準プロシージャとして作成する。
作成例
- 標準モジュールを作成する。
データベースウインドウのモジュールウインドウを開き「メニュー」から「挿入」→「標準モジュール」でEditorが開く。次のプロシージャを記述する。
- フォームの「閉じる」ボタンのプロシージャに作成した標準プロシージャを呼び出す記述をする。
- これで完成。フォーム数に関係なくまとめてフォームが閉じられます。しかしメニューフォームは開いておかないと困りますね。そのコマンドも記述しておきましょう。(上図)
(この項終わり)