第3章 Visual Basic 6.0 による開発の成果物
3.2 基本モジュール
--- フォームモジュールとコードモジュール ---
この項目 (3.2.2.2) の見出しの一覧
作成済の基本モジュールをカレントプロジェクトに追加して開く/作成済の基本モジュールのファイルの上書き保存/作成済の基本モジュールに名前を付けてファイルの保存/エクスプローラでファイル名を変更すると/作成済の基本モジュールのパス情報の取得
ここの説明は、作成済の基本モジュールに対して通用するだけでなく、新たに作成しようとする基本モジュールに対しても、それに名前を付けてファイルの保存の保存という操作を施した後であれば、通用します。
ここには、作成済の基本モジュールに関する操作の詳細説明として、次の四つが書いてあります。この中の三番目の名前を付ける操作と四番目のパス情報の取得に関する操作の中で行う指示は、「3.2.2.1 新しい基本モジュールに関する操作」 に説明があった新しい基本モジュールに名前を付けてファイルの保存という指示と同じものです。
・・ 作成済の基本モジュールをカレントプロジェクトに追加して開く
メモ帳に関する操作においては、(メモ帳一つに対して) ファイルを一つだけしか開けない形になっています。これに比べて、基本モジュールが格納されているファイルに関する操作においては、一つの Visual Basic に指示を与えて次々と基本モジュールを開いていくことができるので、複数のファイルを開いた状態にできる点に違いがあります。
開かれた基本モジュールが複数あり得るので、基本モジュールというファイルに関する操作は、どれを対象にするのか指定する必要があります。
このために、対象基本モジュールのコードウィンドウ (フォームモジュールの場合はフォームウィンドウでも構いません) をクリックしてフォーカスをあててください。あるいは、モジュール一覧表の中の基本モジュール名 (即ちファイル名) をクリックして反転表示にしてください。こうすれば、操作の対象となる基本モジュールが決まりますから、後はメモ帳の操作と同じ要領で取り扱うことができます。
(a) 作成済の基本モジュールをカレントプロジェクトに追加して開く
既に作成済の基本モジュール (フォームモジュールまたはコードモジュール) をカレントプロジェクトに追加して (付け加えて) 開くには、次の二ステップの操作を行います。
第一ステップでは、メインウィンドウのプロジェクト(P) というメニュータイトルを開いて、その中のファイルの追加(A)... というメニュー項目をクリックしてください。
この指示を与えると、以下に示すファイルの追加というダイアログボックスが登場します。そこで、第二ステップとして、基本モジュールのファイルが格納されているフォルダ (ディレクトリ) とファイル名を選択してから開く (または OK) というボタンをクリックしてください。
この第二ステップでは、カレントプロジェクトに追加する (付け加える) こと、および作成済の基本モジュールを開くことの二つを同時に行ってしまいます。
--- ファイルの追加というダイアログボックスは、名前を付けてファイルの保存にも似ています。大きな違いは、ファイルの追加はどのファイルを開いて読み出すのかを指定するのに対して、名前を付けてファイルの保存はどのファイルに書き出すのかを指定する点です。---
このファイルの追加の操作を行っても、基本モジュールに対応するフォームウィンドウやコードウィンドウは登場しませんから、必要なウィンドウを呼び出す操作はこの後で行ってください。
以上は、ファイルの追加のためのごく普通の操作方法ですが、同じことを次の裏わざを使って行うこともできます。裏わざを使うと複数のファイルを一遍に追加できるので便利です。
裏わざも二ステップの操作からなっていますが、中身はだいぶ違います。
第一ステップでは、Windows 系 OS のエクスプローラを開いて追加したいファイルをクリックして反転表示にします。Shift キーまたは Ctrl キーを押したままの状態でクリックすれば、複数のファイルを反転表示にすることもできます。
第二ステップでは、反転表示のファイルをドラッグ (マウスの左ボタンをクリックしたままの状態でのマウスの移動) して、プロジェクトエクスプローラにドロップします (目標の個所でマウスの左ボタンを元に戻します)。エクスプローラに関するドラッグアンドドロップ操作によって、ファイルをコピーする際の要領を思い出していただくとよいでしょう。
こうすると、反転表示の全てのファイルをカレントプロジェクトに追加して (付け加えて) 開くことになります。
作成済の基本モジュール (フォームモジュールまたはコードモジュール) の保存には、次の二ステップの操作を行います。
第一ステップでは、どの基本モジュールを保存したいのかを指定します。プロジェクトエクスプローラのモジュール一覧表の中の作成済の基本モジュールを一つ選んでそのモジュール名 (即ちファイル名) をクリックして反転表示にするか、あるいは保存したい基本モジュールに対応するコードウィンドウ (フォームモジュールの場合はフォームウィンドウでも構いません) をクリックしてフォーカスをあててください。
第二ステップでは、メインウィンドウのファイル(F) というメニュータイトルを開いて、その中の … の保存(S) というメニュー項目をクリックしてください。
--- Visual Basic には、プロジェクトの上書き保存(V) というメニュー項目がありますが、これは、そのプロジェクトに含まれる全モジュールのファイルを最新の内容にした上でプロジェクトファイルを保存するものです。
… の保存(S) の方は、指定した基本モジュールを一つだけ保存するためのものですから、どちらかというと特殊用途向けです。
通常は、プロジェクトの上書き保存(V) の方をよく使用します。---
基本モジュール (フォームモジュールまたはコードモジュール) の変更前の内容と変更を施した後の最新の内容の両方とも保存するには、次の三ステップの操作を行います。
第一ステップでは、どの基本モジュールを保存したいのかを指定します。プロジェクトエクスプローラのモジュール一覧表の中の作成済の基本モジュールを一つ選んでそのモジュール名 (即ちファイル名) をクリックして反転表示にするか、あるいは保存したい基本モジュールに対応するコードウィンドウ (フォームモジュールの場合はフォームウィンドウでも構いません) をクリックしてフォーカスをあててください。
第二ステップでは、名前を付けてファイルの保存という指示を与えます。
この操作方法は、以前に説明があった 3.2.2.1 (b) 新しい基本モジュールに名前を付けてファイルの保存 と同じです。新しい基本モジュールの場合も作成済の基本モジュールの場合も操作方法に変わりはありません。
メインウィンドウのファイル(F) というメニュータイトルを開いて、その中の名前を付けて … の保存(A)... というメニュー項目をクリックしてください。
この指示を与えると、名前を付けてファイルの保存というダイアログボックスが登場します。そこで、第三ステップとして、新しいファイル名とファイルの格納先のフォルダ (ディレクトリ) とを指定してから保存 (または OK) というボタンをクリックしてください。
これらの結果、基本モジュールの新しいコピーが作られることになります。元の基本モジュールはそのまま残ったままですが、その基本モジュールの最新の内容がここで指定したファイルに保存されることになります。
--- Visual Basic には、名前を付けてプロジェクトの保存(E)... というメニュー項目がありますが、これはプロジェクトに名前を付けること(とそのプロジェクトファイルを保存すること) が主目的ですから、混同しないようにご注意ください。---
ところで、この保存処理の結果は、基本モジュール名の変更 (即ちファイル名の変更) だと捉らえることもできます。
元の基本モジュールはそのまま残っているのですが、元の基本モジュールの内容をコピーした新しいファイルができて、そのファイル名は、ここで指定した新しい名前になります。そして、カレントプロジェクトのモジュール一覧表の中の基本モジュール名 (即ちファイル名) もこの新しい名前に変更されます。
ですから、元の基本モジュールをここで消去してしまうとすれば、新しい名前のファイルは、元の基本モジュールの名前が変更になった (上に更に内容が最新の内容になった) ものだとみなすことができます。また、消去せずに残しておくことにすれば、名前の変更をした上に、更に元の基本モジュールを復元して残してあるのだとみなすことができます。
基本モジュール名の変更のために名前を付けてファイルの保存という指示を与えるときには、これを行った後に元の基本モジュールを消去するようにお勧めいたします。もしも消去しないと、元の基本モジュールがゴミファイルとして残ってしまうからです。なお、元の基本モジュールを消去するには、Windows 系 OS のエクスプローラを登場させて、それに削除の指示を与える方法が普通です。
ただし、複数のプロジェクトのメンバになっている基本モジュール (即ち共用基本モジュール) の名前の変更のために名前を付けてファイルの保存という指示を与えた場合には、元の基本モジュールを消去してはなりません。もしも消去してしまうと、この基本モジュールをメンバにもつ他のプロジェクト (即ちこの基本モジュールが所属するプロジェクト) を開いたときに 「ファイルが見つかりません」 というエラーメッセージが出ることになってしまいます。
なぜなら、カレントプロジェクトのモジュール一覧表の中の基本モジュール名は新しい名前に変更されますが、これ以外のモジュール一覧表は変更されずに元の名前が残っているからです。そこで、そういうモジュール一覧表をもつプロジェクトを開くと、そのモジュール一覧表の中にある変更前の名前のファイルを探しに行くことになるので見つからないというわけです。
したがって、元の基本モジュールを残しておく必要があります。消去しても問題のなくなる時期は、その基本モジュールをメンバにもつような全てのプロジェクトに対して、それらを一つ一つ開いて、それぞれのモジュール一覧表の変更を済ませた後だということになります。
ファイル名を変更するには、一般に Windows 系 OS のエクスプローラを用います。
そこで、Visual Basic に名前を付けてファイルの保存という指示を与える代わりに、エクスプローラに名前の変更という指示を与えたとしても、基本モジュール名 (即ちファイル名) を変更することができるはずです。
ただし、こうするとモジュール一覧表の中のモジュール名は変更されません。ですから、この基本モジュールをメンバにもつようなプロジェクトを開くと 「ファイルが見つかりません」 というエラーメッセージが出ることになってしまいます。
これらのことから、どのプロジェクトのメンバにもなっていない基本モジュール (言わば浪人中の基本モジュール) に限って、エクスプローラを使って名前の変更をしてもよいということができます。そうでない場合、基本モジュールの名前を変更するには Visual Basic に対して名前を付けてファイルの保存という指示を与えてください。
プロジェクトエクスプローラを通してプロジェクトファイルの中のモジュール一覧表を見ると、基本モジュール (フォームモジュールまたはコードモジュール) のファイル名が分かります。しかし、ここにはパス情報が記載されていません。
基本モジュールのパス情報を取得するには、次の二ステップの操作が必要です。
第一ステップでは、どの基本モジュールのパス情報を知りたいのかを指定します。プロジェクトエクスプローラのモジュール一覧表の中の作成済の基本モジュールを一つ選んでそのモジュール名 (即ちファイル名) をクリックして反転表示にするか、あるいはその基本モジュールに対応するコードウィンドウ (フォームモジュールの場合はフォームウィンドウでも構いません) をクリックしてフォーカスをあててください。
第二ステップでは、一旦名前を付けてファイルの保存という指示を与えます。
この操作方法は、以前の説明のとおり、メインウィンドウのファイル(F) というメニュータイトルを開いて、その中の名前を付けて … の保存(A)... というメニュー項目をクリックしてください。
この指示を与えると、名前を付けてファイルの保存というダイアログボックスが登場するので、その中からパス情報を読み取ることができます。見た後は、キャンセルボタンをクリックしてください。