Visual Studio 2022 の MFC フレームワーク - アプリケーション ウィザード

私は Liyuan Breeze です。IT 業界で 25 年のベテランとして、今日は Visual Studio 2022 開発ツールの下で MFC フレームワークの知識を再検討します。

MFC (Microsoft Foundation Class、Microsoft Foundation Class Library) は、プログラマの開発作業を簡略化するために Microsoft が開発した C++ クラスの集合体であり、クラスの形でユーザーに提供されるオブジェクト指向の関数ライブラリのセットです。Microsoft の目的はプログラマーの開発作業を簡素化することであり、これが重要であり、置き換えではなく簡素化であることに注意してください。これらのクラスを使用すると、プログラマが Windows アプリケーションの開発を完了するのに効果的に役立ちます。

Visual Studio 2022 には、MFC アプリケーション ウィザードと呼ばれるものがあります。MFC アプリケーション ウィザードは、ソース コードの生成を支援するウィザード ツールです。MFC フレームワークに基づいてソース コードを自動的に生成するのに役立ちます。ウィザードの各ステップで、プログラマはニーズに応じてさまざまな機能を選択し、カスタム アプリケーションを実現できます。以下では、MFC アプリケーション ウィザードを使用して、MFC ベースのシングル ドキュメント インターフェイス (SDI) アプリケーションを作成します。

まず、次の図に示すように、Visual Studio 2022 のメイン インターフェイスを開きます。

Visual Studio 2022を起動し、[ファイル]メニューをクリックし、表示される新しいプロジェクトダイアログで[新規]→[プロジェクト]を選択し、右ウィンドウで「MFCアプリケーション」を選択します。

 プロジェクト名は Mfc、ソリューション名は MfcApp です。

[作成]ボタンをクリックすると、MFCアプリケーションタイプのオプション設定ダイアログボックスが表示されます。「アプリケーションタイプ」のドロップダウンリストボックスで「シングルドキュメント」を選択し、「プロジェクト」のドロップダウンリストボックスで「MFCstandard」を選択します。スタイル」などはデフォルトの選択のままにします。

[次へ]ボタンをクリックすると、「ドキュメントテンプレートのプロパティ」設定ダイアログボックスが表示されますので、デフォルトのままにしてください。

 [次へ]ボタンをクリックすると、「ユーザーインターフェース機能」の設定ダイアログボックスが表示されますので、デフォルトのままにしてください。   

[次へ]ボタンをクリックすると、「高度な機能」設定ダイアログボックスが表示されますので、デフォルトのままにしてください。

[次へ]ボタンをクリックすると、「生成クラス」の設定ダイアログボックスが表示されますので、デフォルトのままにしてください。

[完了] ボタンをクリックすると、MFC アプリケーション ウィザードが新しいプロジェクト Mfc を作成します。

ここで、「Ctrl+F5」キーを押してプログラムをコンパイルして実行すると、実行結果が表示されます。

このプログラムでは、自分でコードを記述することなく、タイトル バー、最小化ボックス、最大化ボックス、システム メニュー、および調整可能な境界線を備えたアプリケーションを生成しました。このプログラムは前の投稿で作成したものに似ていますが、メニュー バー、ツールバー、ステータス バーが追加されています。これはすべて MFC アプリケーション ウィザードを通じて生成されます。

MFCをベースにしたプログラムフレームワーク

MFC ライブラリは、Windows アプリケーションを開発するための C++ インターフェイスです。MFC はオブジェクト指向フレームワークを提供しており、プログラム開発者はこのフレームワークに基づいて Windows アプリケーションを開発できます。MFC はオブジェクト指向設計を採用し、Windows API のほとんどを C++ クラスにカプセル化し、クラス メンバーの形式でプログラム開発者に提供します。機能です。

MFC アプリケーション ウィザードを使用して生成したコードを見てみましょう。Visual Studio のメニュー バーの [表示] メニューをクリックし、[クラス ビュー] メニュー項目をクリックすると、クラス ビューのサブウィンドウが開き、プロジェクト内のクラスの組織構造を確認できます。「クラス図」の Mfc ルート ノードを展開すると、プロジェクト内の 5 つのクラスがすべて表示されます。クラスのメンバー情報を表示したい場合は、クラスを直接選択すると、そのクラスが所有する関数やプロパティが下部ペインに表示されます。

MFC では、クラス名はすべて文字「C」で始まります。単一ドキュメント アプリケーション、つまりプロジェクトの作成時にアプリケーション タイプで選択した「単一ドキュメント」の場合、CMainFrame クラス、「C+プロジェクト名+App」という名前のクラス、および「C」という名前のクラスがあります。 +プロジェクト名 +Doc」と「C+ProjectName+View」という名前のクラス。

初心者として初めて MFC プログラムに触れるときは、MFC アプリケーション ウィザードによって生成されたこれらのクラスとクラス内のコードに徐々に慣れる必要があります。このようにして、コードを読むときに、どのクラスとどのコードがウィザードによって生成されるのか、どのクラスやどのコードが自動生成されないのかを知ることができます。

クラス ビュー ウィンドウでクラス名をダブルクリックすると、そのクラスを定義するヘッダー ファイルが右側のコード エディター ウィンドウで開きます。

5 つのクラスすべてに基本クラスがあることがわかります。たとえば、CMfcView は CView から派生し、CMainFrame は CFrameWnd から派生します。これらの基本クラスはすべて MFC のクラスです。これらの基本クラスのヘルプ情報を確認できます。特定のクラスまたは関数のヘルプを表示する場合は、現在のカーソルをクラスまたは関数の位置に置き、F1 キーを押すと、MSDN で対応するヘルプが開きます。MSDN ヘルプ ページの各クラスの説明ページの下部に「階層図」というハイパーリンクがあり、このリンクをクリックすると MFC クラス全体の組織図が表示されます。  

次の図は MFC クラスの組織図です。

1. CObject を継承したクラス

2. CCmdTarget クラスを継承する

3. CWndのクラスを継承する

4. その他のクラス

5. 階層図のカテゴリー

 

上の図から、CFrameWnd は CWnd から派生していることがわかります。また、CWndから派生したCViewクラスも存在することがわかります。これは、このプログラムの CMainFrame クラスと CMfcView クラスには共通の基本クラス、CWnd クラスがあることを意味します。CWnd クラスは、ウィンドウ関連の操作をカプセル化する MFC の非常に重要なクラスです。

著者について: Li Yuan Weifeng、1981 年生まれ、上級エンジニア、浙江大学工学修士、ソフトウェア エンジニアリング プロジェクト監督者、プログラマー、ソフトウェア デザイナー、システム アーキテクト、初期の Windows プログラマー、忠実な Visual Studio ユーザー、C/ C++ ユーザー 著者は、UNIX 時代、デスクトップ WIN32 時代、Web アプリケーション時代、クラウドコンピューティング時代、携帯電話 Android 時代を経験し、コンピュータ業界で 25 年間勉強し、苦労してきたベテランです。ビッグデータ時代、ICT時代、AIディープラーニング時代、知能機械時代、これからどんな時代になるか分からないけど、この旅は苦難と得物に満ちていたことだけは覚えている、そして私は希望に満ちてあなたとともに進んでいきたいと思っています。 

おすすめ

転載: blog.csdn.net/wang2015cn/article/details/132070117