この節 (2.8) の見出しの一覧
コードウィンドウとは/コードウィンドウの便利な機能/イベントプロシージャとジェネラルプロシージャ/宣言セクションとプロシージャ/コードウィンドウの呼び出し方
コードウィンドウは、次の形 (顔) をしています。
コードウィンドウは、アプリケーションプログラム (プロジェクト) のプログラムコードを見たり書いたりするときに使う召使です。テキストエディタとかエディタという一般名称で呼ばれる召使の仲間ですが、Visual Basic では、特にコードウィンドウという名前がついています。
コードウィンドウは、Visual Basic のプロジェクトを構成する各フォームモジュールおよび各コードモジュールに対応して一つずつ存在するものです。そして、複数のモジュール (フォームモジュールやコードモジュール) を持つプロジェクトの場合には、それらの複数のコードウィンドウを次々とディスプレイ画面上に登場させていくこともできます。この章でご紹介している9種類 (細かくは11種類) のウィンドウを召使にたとえていますが、コードウィンドウという種類の召使は一人とは限らず、複数人のこともあるということになります。この点に関しては、ご紹介済のフォームウィンドウと同じです。
コードウィンドウは、重ねた二枚の紙切れのような構造になっています。
一般に、コードウィンドウの中には数多くのプロシージャが組み込まれているのが普通ですから、少なくともその内の二つを同時に見たいことがよくあります。 こんなときには、前面の紙切れを中ほどまで下にずらすと、二つのプロシージャを表示する態勢が整います。また、二枚の紙切れのそれぞれには、一つのプロシージャの“ある部分”とそこから離れた“別の部分”を同時に表示することもできます。
プログラムコードをカットアンドペースト (またはコピーアンドペースト) するときには、この二枚重ねの構造はとても便利です。
コードウィンドウはテキストエディタとして、Visual Basic の(ソース)コードを編集しやすいように工夫されていますし、更に(ソース)コードのデバッグがしやすいようになっています。例えば、次のような点が便利です。
なお、これらの機能の半分ぐらいは、Visual Basic 5.0 で新規に追加されたものです。
フォームモジュールの中には、フォームウィンドウを通して見ることのできるオブジェクト詳細情報、およびコードウィンドウを通して見ることのできるプログラムコードが入っています。
コードモジュールの中には、フォームウィンドウを通して見ることのできる部分はなく、コードウィンドウを通して見ることのできるプログラムコードだけが入っています。
即ち、フォームモジュールのプログラムコードもコードモジュールのプログラムコードもコードウィンドウを通して見ることができます。
フォームモジュールのプログラムコードの中には、各種のオブジェクトと結び付いたイベントプロシージャ、および特定のオブジェクトとの結び付きのないジェネラルプロシージャなる両方の種類のプロシージャを組み入れることができます。
他方、コードモジュールの中にはオブジェクトを入れることができませんから、コードモジュールのプログラムコードの中には、ジェネラルプロシージャという種類のプロシージャだけしか組み入れることができません。
これは、コードウィンドウの左上のプロシージャの種類を表すコンボボックスを開くことで確認できます。フォームモジュールの場合、ここにはオブジェクト名の一覧が記載されていますが、コードモジュールの場合、ここにはジェネラルプロシージャを意味する (General) という文字列しか現れません。
MANDALA を用いた開発においては、フォームモジュールに組み込まれるプログラムコードは原則として全て機械生成されます。更に、二・三のコードモジュールも機械生成されますし、また三つのコードモジュールが共通ライブラリとして提供されます。したがって、アプリ開発者が開発するプロシージャは、これ以外のコードモジュールのジェネラルプロシージャだけであるということになります。
ところで、Visual Basic のイベントは、ハードウェアの動作と密接に関係したローレベルのものですが、このレベルのイベントプロシージャは全て機械生成されてしまいます。ですから、アプリ開発者は、ローレベルのイベントのハンドリングに頭をひねる必要がなくなります。しかし、業務内容に依存するプログラムコードは機械生成されません。ですから、アプリ開発者が活躍するのは、業務依存の高級イベントルーチンの開発に関する辺りだということになります。
コードウィンドウを通して見ると分かることですが、フォームモジュールのプログラムコードの中にも、コードモジュールのプログラムコードの中にも、一つの宣言セクションと幾つかのプロシージャが入っています。正確にいうと、プロシージャは一つもないことがありますが、宣言セクションは必ず一つあります。
コードウィンドウの中の宣言セクションを見るには、左上のプロシージャの種類を表すコンボボックスの中の (General) という文字列を選択し、更に右上のプロシージャ名を一覧にしたコンボボックスの中の (Declarations) という文字列を選択してください。
プロシージャを見るには、これ以外の選択をします。即ち、イベントプロシージャを見るには、左上のプロシージャの種類を表すコンボボックスの中からオブジェクトを選択した後に、右上のプロシージャ名を一覧にしたコンボボックスの中から目指すプロシージャを選択してください。また、ジェネラルプロシージャを見るには、左上のプロシージャの種類を表すコンボボックスの中の (General) という文字列を選択した後に、右上のプロシージャ名を一覧にしたコンボボックスの中から目指すプロシージャを選択してください。
MANDALA を用いた開発において、宣言セクションは、Option Explicit というステートメントで始める規約になっています。こうすると、変数宣言必須 (変数の宣言を強制すること) になりますから、変数のスペルミスが見つけやすいプログラムになります。変数の宣言を省略可にすると、変数のスペルミスに悪戦苦闘するはめになるので、こうすることはお勧めできません。
--- 各モジュールの宣言セクションにOption Explicit というステートメントを自動的に付加するための指定方法については、「第4章 Visual Basic 6.0 のカスタマイズ」を参照してください。---
コードウィンドウを呼び出すには、プロジェクトエクスプローラのモジュール一覧表の中の対応するフォームモジュール名またはコードモジュール名 (即ちファイル名) をクリックして反転表示にしてから、コードの表示というボタンをクリックしてください。
または、それがコードモジュールに対応するものであれば、プロジェクトエクスプローラのモジュール一覧表の中のコードモジュール名 (即ちファイル名) をダブルクリックすることで呼び出すこともできます。
--- 因みに、フォームモジュール名をダブルクリックするとフォームウィンドウが呼び出されます。---
コードウィンドウを使わないときには、最小化することもできますし、ディスプレイ画面上から消すこともできます。毎度おなじみのように、最小化するには、コードウィンドウの右上端あたりにある下線印の最小化ボタンをクリックしてください。ディスプレイ画面上から消すには、コードウィンドウの右上端のX印の閉じるボタンをクリック、またはウィンドウの左上端にアイコンをダブルクリックしてください。
フォームモジュールのコードウィンドウを呼び出すには、別の方法もあります。その方法は、フォームウィンドウのオブジェクトをダブルクリックすることです。こうすると、コードウィンドウが呼び出されて、そのオブジェクトに関するイベントプロシージャを見ることができます。
--- MANDALA を用いた開発においては、フォームモジュールの中のプログラムコードは原則として全て機械生成されてしまいますから、この種のコードウィンドウを呼び出す必要はありません。誤ってオブジェクトをダブルクリックしたときには、登場したコードウィンドウの右上端のX印の閉じるボタンをクリック、またはウィンドウの左上端にアイコンをダブルクリックして消してください。---