第三回-01 初めての C/C++ プログラミング(GUIアプリケーション編)


初めてのGUIアプリケーション

このページでは、簡単な GUI アプリケーションの作成法を学ぶ。
ここでは、MFC (Microsoft Foundation Classes) というライブラリを用いて GUI アプリケーションを作成する。

なお、「第一回-02 コンソールアプリケーションとGUIアプリケーション」にて
「最新の v142 ビルドツール用 C++ MFC」にチェックをいれて Visual Studio のインストールを行わなかった場合、
本ページの内容を学習できない。追加インストールもできるので、必要に応じて追加すること。

まず、Windows のメニューから Visual Studio 2019 を起動すると、以下の画面が開く。「新しいプロジェクトの作成」をクリックしよう。



次に、下図のように「MFC アプリ」をクリックして「次へ」をクリック。



次の画面ではプロジェクト名などを変更できるが、ここではデフォルトのままにした。「作成」をクリック。



次は、どのようなGUIアプリケーションを作成するかを設定する画面である。ここでは「アプリケーションの種類」を「ダイアログベース」とする。「完了」をクリック。



すると、ひな型の状態で Visual Studio が起動する。この状態でどのようなアプリケーションとなっているか確認してみよう。
メニューから「デバッグ」→「デバッグを開始」を選択。



すると、下図のようなシンプルなアプリケーションが開く。確認したら、このアプリケーションを閉じる。



それでは、このひな型のアプリケーションに少し手を加えてみよう。
ソリューションエクスプローラーで下図のように「MFCApplication1.rc」をダブルクリックする。



すると、「リソースビュー」が現れるので、図のように「IDD_MFCAPPLICATION1_DIALOG」をダブルクリックすると、
中央にアプリケーションの見た目を設定できるビューが開く。



そこで、例えば、右下にある「プロパティ」で、「Caption」の項目の文字を図のように書き換えてみよう。
中央のビューでも、文字の変更が反映されることがわかる。

それを確認したら、「OK」ボタンをダブルクリックしてみよう。



すると、以下のようなコードが開く。「CMFCApplication1Dlg::OnBnClickedOK()」という関数が追加されており、
これは「アプリケーションのOK ボタンを押したときに実行される関数」である。
このように、ユーザーのアクションに対して実行される関数を「イベントハンドラ」という。



ここで、下図のように「CDialogEx::OnOK();」の行の先頭に「//」を記してコメント化し、
その次に「 AfxMessageBox(_T("初めてのダイアログ")); 」と記述してみよう。



以上が終わったら、再びメニューから「デバッグ」→「デバッグを開始」を選択してみよう。
ビルドが終わるとアプリケーションが起動し、
「OK ボタンをクリックすると小さなダイアログが開く」という挙動を確認できる。

記述した AfxMessage 関数が、小さなダイアログを開くという挙動を実現していたのである。



なお、「第二回-02 プログラムを実行するとはどういうことか」でコンソールアプリケーションで確認したように、
GUIアプリケーションでも拡張子 exe の実行ファイルが出来ている。

コンソールアプリケーションと同様にフォルダ構造をたどると、下図のように MFCApplication1.exe が見つかる。
コンソールアプリケーションと異なり、ダブルクリックで起動できるので確認してみると良い。







←第二回課題第三回-02 配布した画像処理アプリケーションの概略→

非情報系学生のための C/C++ 入門に戻る