ウィザードおよびリソース エディタ
更新 : 2007 年 11 月
Visual C++ では、MFC プログラミング用にいくつかのウィザードと、多数の統合リソース エディタが用意されています。ActiveX コントロールのプログラミングでは、ActiveX コントロール ウィザードが MFC アプリケーション ウィザードと同じような役割を果たします。これらのツールはプログラミング時に必須というわけではありませんが、作業を簡単かつ迅速に行うためには欠かせません。
MFC アプリケーション ウィザードによる MFC アプリケーションの作成
MFC アプリケーション ウィザードを使用すると、Visual C++ で MFC プロジェクトを作成できます。MFC プロジェクトには、OLE およびデータベースのサポートを取り込むことができます。このプロジェクトに含まれるファイルには、アプリケーション、ドキュメント、ビュー、フレーム ウィンドウの各クラス、メニュー、ツール バーなどの標準リソース、必須の Windows ファイルなどがあります。さらに、プログラムのヘルプ ファイルの作成に必要な標準 Windows ヘルプ トピックを含む .rtf ファイルなども含めることができます。
[クラス ビュー] によるクラスと Windows メッセージの管理
[クラス ビュー] を使用すると、Windows のメッセージやコマンド用のハンドラ関数を簡単に作成できます。クラスの作成や管理、クラスのメンバ変数の管理、オートメーション用のメソッドやプロパティの作成、データベース クラスの作成なども簡単になります。
メモ : |
---|
[クラス ビュー] では、MFC クラスの仮想関数もオーバーライドできます。クラスおよびオーバーライドする関数を選択します。それ以降の処理は、メッセージ処理と同様に、次に示すように行われます。 |
Windows オペレーティング システムで動作するアプリケーションは、メッセージ ドリブン型です。ユーザー操作などのイベントが動作中のプログラムで発生すると、Windows は該当するウィンドウにメッセージを送ります。たとえば、ユーザーがウィンドウ上でマウスをクリックすると、マウスの左ボタンが押されたときに WM_LBUTTONDOWN メッセージを送り、左ボタンから指が離れたときに WM_LBUTTONUP メッセージを送ります。ユーザーがメニュー バーからコマンドを選択すると、WM_COMMAND メッセージが送られます。
MFC フレームワークでは、ドキュメント、ビュー、フレーム ウィンドウ、ドキュメント テンプレート、アプリケーション オブジェクトなどが、メッセージを "ハンドル (処理)" できます。これらのオブジェクトは、そのメンバ関数として "ハンドラ関数" を持っています。フレームワークは、到着したメッセージを該当するハンドラに振り分けます。
プログラミング作業の大部分は、どのメッセージをどのオブジェクトにマッピングするかを決めて、実装することです。これを行うには、[クラス ビュー] と [プロパティ] ウィンドウを使用します。
[プロパティ] ウィンドウは、空のメッセージ ハンドラ メンバ関数を作成します。このハンドラの本体を実装するには、ソース コード エディタを使用します。また、[クラス ビュー] で、クラスとそのメンバを作成および編集することもできます。MFC クラスから派生しないカスタム クラスを作成および編集できます。[クラス ビュー] の使い方とプロジェクトにコードを追加するウィザードの詳細については、「コード ウィザードを使用した機能の追加」を参照してください。
リソース エディタによるリソースの作成と編集
Visual C++ リソース エディタでは、メニュー、ダイアログ ボックス、カスタム コントロール、アクセラレータ キー、ビットマップ、アイコン、カーソル、文字列、バージョン リソースなどを作成および編集できます。Visual C++ Version 4.0 では、ツール バー エディタを使用した方が簡単にツール バーを作成できます。
さらに、MFC では、"クリップアート" リソースを含む COMMON.RES というファイルが提供されます。COMMON.RES からクリップアートをコピーして、自分のリソース ファイルに貼り付けることができます。COMMON.RES には、ツール バー ボタン、コモン カーソル、アイコンなどが含まれます。これらのリソースはアプリケーションで使用することも、変更、再頒布することもできます。COMMON.RES の詳細については、「CLIPART サンプル : コモン リソース」を参照してください。
MFC アプリケーション ウィザード、Visual C++ のウィザード、リソース エディタ、および MFC フレームワークを使用すると、多くの作業を任せることができるため、コードの管理が簡単になります。アプリケーション固有のコードは、ドキュメント クラスとビュー クラスに集中します。