解説

実例で学ぶWindowsプログラミング

第1回 MDI型Windowsアプリケーションの基礎開発

デジタルアドバンテージ
2004/11/10
Page1 Page2 Page3 Page4

MDIアプリケーション開発の準備

 今回は、Windowsアプリケーションの基本部分を作成する。具体的には、MDI型のWindowsアプリケーションを作成し、メニュー・バーやステータス・バーの追加、子ウィンドウを1つしか起動できないようにする処理などの、MDIアプリケーションとして基礎的な機能を実装する。

 今回作成するVS.NETプロジェクトは、次のリンクよりダウンロードできる。

 まずは、アプリケーション開発のフォルダ構成を決めておこう。

■MDIアプリケーション開発のフォルダ構成

 本稿では、次の図のようにフォルダを構成する。それぞれのフォルダは、Windows標準のエクスプローラなどを使って手動で作成すればよい。フォルダの意味については、図の下部にある説明を読んでほしい。

MDIアプリケーションのフォルダ構成
本稿では、このようなフォルダ構成でアプリケーションの開発を進める。それぞれのフォルダは、Windows標準のエクスプローラなどを使って手動で作成すればよい。
  「Insider.NET」フォルダ。アプリケーションのルート・フォルダ。通常は、このフォルダの名前は、会社名にすればよい。
  「Kokyaku.NET」フォルダ。アプリケーション名のフォルダ。本稿のアプリケーション名は、「Kokyaku.NET」とする。
  「bin」フォルダ。「bin」フォルダ内には「Debug」フォルダと「Release」フォルダがあり、「Debug」フォルダ内にはデバッグ版のプログラムが出力され、「Release」フォルダ内にはリリース版のプログラムが出力される。
  「doc」フォルダ。アプリケーションに関連するドキュメントを格納するためのフォルダ。
  「src」フォルダ。このフォルダに、アプリケーションのプロジェクトと、それに含まれるソース・ファイルを置く。

 上図の構成でアプリケーション開発用のフォルダを準備できたら、次にVS.NETでWindowsアプリケーションのプロジェクトを作成しよう。

■ソリューションの作成

 VS.NETのプロジェクトには、それを管理するためのコンテナとなるVS.NETソリューションが必要となる。よって、VS.NETソリューションを先ほどのフォルダ構成の「src」フォルダの直下に作成する。具体的には、次の画面のようにして、ソリューションの新規作成を行う。

VS.NETソリューションの作成
VS.NETのIDEにあるメニュー・バーから[ファイル]−[新規作成]−[空のソリューション]を選択すると、[新しいプロジェクト]ダイアログが表示される。なお、このダイアログで[新しいソリューション名]の入力項目が表示されていない場合は、左下にある[詳細/縮小]ボタンをクリックすれば表示されるようになる。
  [プロジェクトの種類]から「Visual Studio ソリューション」を選択する(自動的に選択されているはず)。
  [テンプレート]から[空のソリューション]を選択する(これも自動選択されているはず)。
  [プロジェクト名]にアプリケーション名(本稿では「Kokyaku.NET」)を入力する。
  [場所]に先ほど作成した「src」フォルダ(本稿の例では「C:\Insider.NET\Kokyaku.NET\src」)を入力する。
  ソリューションの作成場所が表されているが、「src」フォルダの直下ではなく、「C:\Insider.NET\Kokyaku.NET\src\Kokyaku.NET」というフォルダになっている。このようにVS.NETでソリューションを作成すると、ソリューション名のフォルダを自動作成してしまうので、ソリューション作成後にこのフォルダの中身を「src」フォルダへと移動させる(詳細後述)。
  [OK]ボタンをクリックすると、空のソリューションが作成される。

 上の画面の手順によりソリューションが作成されるが、実際に作成されたVS.NETソリューションのファイルを見ると、「src」フォルダの直下ではなく、「C:\Insider.NET\Kokyaku.NET\src\Kokyaku.NET」というフォルダの中に作成されている。これは、VS.NETが自動的にソリューション名のフォルダを作成してしまうためだ。

 そこで、作成されたソリューションを手動で「src」フォルダの直下に移動させることにしよう。フォルダの移動は、Windowsでの通常のファイル操作と同じように、Windowsのエクスプローラなどを使って行えばよい。次の画面は、実際にエクスプローラで移動しているところだ。

ソリューション・ファイルの移動
VS.NETでソリューションを作成すると、ソリューション名のフォルダの中にソリューション・ファイルが作成されるので、Windowsのエクスプローラなどを使って手動で、それらのファイルを「src」フォルダの直下に移動する。
  ソリューション名のフォルダ(本稿の例では「Kokyaku.NET」)を選択する。
  ソリューション・ファイル(本稿の例では「Kokyaku.NET.sln」と「Kokyaku.NET.suo」)をドラッグ&ドロップで「src」フォルダに移動する。
  移動した後のソリューション名のフォルダは不要なので削除する。

 以上でソリューションの作成は完了だ。後はこのソリューションに、アプリケーションで必要となるプロジェクトを作成し、追加していくことになる。

■ソリューションへのプロジェクトの追加

 それでは実際に、ソリューションへプロジェクトを追加してみよう。ここでは、MDIアプリケーションのメイン・ウィンドウのプロジェクトを追加する。なお、今後の連載で、この「プロジェクトの追加」は何度も出てくるが、追加方法の説明は二度と繰り返さないので、ここで覚えてほしい。

 まず先ほどのソリューション・ファイル「Kokyaku.NET.sln」をダブルクリックして実行しよう。すると、VS.NETのIDEがそのソリューションを開いて起動するはずだ。次に起動したIDEの[ソリューション エクスプローラ]にある「ソリューション 'Kokyaku.NET'」を右クリックしてコンテキスト・メニューを表示し、そのメニューから[追加]−[新しいプロジェクト]を選択する。これにより、[新しいプロジェクトの追加]ダイアログが表示される。

[新しいプロジェクトの追加]ダイアログによるプロジェクトの追加
[新しいプロジェクトの追加]ダイアログを使って、新たなプロジェクト(この例では「Kokyaku」)を追加する。
  VS.NET IDEの[ソリューション エクスプローラ]にある「ソリューション 'Kokyaku.NET'」を右クリックしてコンテキスト・メニューを表示し、そのメニューから[追加]−[新しいプロジェクト]を選択すると、[新しいプロジェクトの追加]ダイアログが表示される。このダイアログから新たなプロジェクト(本稿の例では「メイン・ウィンドウのプロジェクト」)を追加できる。
  [プロジェクトの種類]から「Visual C# プロジェクト」を選択する。
  [テンプレート]から[Windows アプリケーション]を選択する。
  [プロジェクト名]にプロジェクトの名前(本稿では「Kokyaku」)を入力する。
  [場所]に先ほど作成した「src」フォルダ(本稿の例では「C:\Insider.NET\Kokyaku.NET\src」)を入力する。
  プロジェクトの作成場所(この例では「C:\Insider.NET\Kokyaku.NET\src\Kokyaku」)が表される。
  [OK]ボタンをクリックすると、プロジェクトが新規作成される。

 上の画面のように、本稿では「Kokyaku」というプロジェクトを作成した。次に、このプロジェクトから生成されるプログラム(実行ファイル)が、先ほどのフォルダ構成で示した「bin」フォルダ内に出力されるように設定しよう。

■プログラム出力先の設定

 プログラムの出力先は、プロジェクトの[プロパティ ページ]ダイアログから設定できる。[プロパティ ページ]ダイアログを表示するには、VS.NET IDEの[ソリューション エクスプローラ]にある「Kokyaku」プロジェクトを右クリックしてコンテキスト・メニューを表示し、そのメニューから[プロパティ]を選択すればよい。なお、プログラム出力先の変更は、プロジェクトを新規作成するたびに行わなければならない。

 [プロパティ ページ]ダイアログは、次の画面のように設定すればよい。

[プロパティ ページ]ダイアログによるプログラム出力先の設定
プログラムの出力先として、先ほど作成した「bin」フォルダを指定する。この際、ソリューション構成が「Debug」モードのときのプログラム出力先は「bin」フォルダ内の「Debug」フォルダを指定し、さらに「Release」モードのときの出力先は「Release」フォルダを指定する(両方とも設定する必要がある)。なお、VB.NETの場合の[プロパティ ページ]ダイアログは見た目が少し違うが、設定内容は同じである。
  VS.NET IDEの[ソリューション エクスプローラ]にある「Kokyaku」プロジェクトを右クリックしてコンテキスト・メニューを表示し、そのメニューから[プロパティ]を選択すると、[プロパティ ページ]ダイアログ(この例では「Kokyaku プロパティ ページ」)が表示される。このダイアログでプログラムの出力先を設定・変更できる。
  ツリー表示の項目の中から、[構成プロパティ]−[ビルド]を選択する。
  まずはソリューション構成が「Debug」モードのときのプログラム出力先を設定するために、構成のコンボボックスから「Debug」を選択する。
  プログラムの出力先として、[出力パス]の値を「..\..\bin\Debug」に変更する(C#の場合、デフォルトでは「bin\Debug」が設定されている。VB.NETでは「bin」となっている)。この設定変更により、デフォルトでは「Insider.NET\Kokyaku.NET\src\Kokyaku\bin\Debug」に出力されるプログラムが、「Insider.NET\Kokyaku.NET\bin\Debug」に出力されるようになる。入力値にある「..」は1階層上がることを意味し、「..\..」で2階層上がることになる。つまり、プロジェクト・フォルダから「src\Kokyaku」分の2階層上がった「Insider.NET\Kokyaku.NET」フォルダの下にある「bin\Debug」フォルダに出力されることになる。
  次に「Release」モードのときのプログラム出力先を設定するために、構成のコンボボックスから「Release」を選択する。
  プログラムの出力先として、[出力パス]の値を「..\..\bin\Release」に変更する(C#の場合、デフォルトでは「bin\Release」が設定されている。VB.NETでは「bin」となっている)。この設定変更により、「Insider.NET\Kokyaku.NET\bin\Release」にプログラムが出力されるようになる。
  [OK]ボタンを押すと、プログラム出力先の設定が保存される。

 上の画面のようにして、ソリューション構成が「Debug」モードのときのプログラム出力先を「Insider.NET\Kokyaku.NET\bin\Debug」に設定し、「Release」モードのときのプログラム出力先を「Insider.NET\Kokyaku.NET\bin\Release」に設定する。以上で、MDIアプリケーション開発の準備は整った。

 次に、MDIアプリケーションのコーディング作業に入っていこう。


 INDEX
  解説:実例で学ぶWindowsプログラミング
  第1回 MDI型Windowsアプリケーションの基礎開発 
    1.本連載で開発するWindowsアプリケーションについて
  2.MDIアプリケーション開発の準備
    3.MDIアプリケーションへのコントロールの追加
    4.MDIアプリケーションのメニュー項目処理の実装
 
インデックス・ページヘ  「解説:実例で学ぶWindowsプログラミング」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH