.NET Framework を使った Windows フォーム アプリケーションの作成 (C++)
更新 : 2007 年 11 月
.NET の開発では、Windows GUI アプリケーションは Windows フォーム (または Winforms) アプリケーションと呼ばれます。Visual C++ による Windows フォーム プロジェクトの開発は、一般的に、Visual Basic や C# など他の .NET 言語と同じです。
Visual C++ の Windows フォーム アプリケーションは、.NET Framework クラスおよびその他の .NET 機能を新しい Visual C++ 構文で使用します。詳細については、「New C++ Language Features」を参照してください。
この手順では、ツールボックスのいくつかの標準コントロールを使用して Windows フォーム アプリケーションを作成します。完成したアプリケーションでは、ユーザーは日付を選択でき、テキスト ラベルにはユーザーが選択した日付が表示されます。
前提条件
このトピックは、C++ 言語の基本を理解していることを前提としています。C++ の学習を始めたばかりのユーザーには、『C++ Beginner's Guide』(Herb Schildt 著) をお勧めします。このガイドはオンラインで入手できます (https://go.microsoft.com/fwlink/?LinkId=115303)。
ビデオ デモについては、「Video How to: Creating a Windows Forms Application By Using the .NET Framework (C++)」を参照してください。
新しい Windows フォーム プロジェクトを作成するには
[ファイル] メニューの [新規作成] をポイントし、[プロジェクト] をクリックします。
[プロジェクトの種類] ペインで、[Visual C++] ノードの [CLR] を選択し、次に [テンプレート] ペインの [Windows フォーム アプリケーション] を選択します。
プロジェクト名として「winformsapp」などの名前を付けて入力します。プロジェクトを保存する場所は、既定の場所をそのまま使用するか、新しい場所を入力するか、ディレクトリを検索します。
Windows フォーム デザイナが開き、次に示すように、作成したプロジェクトの Form1 が表示されます。
フォームにコントロールを追加するには
[ツールボックス] ウィンドウが表示されていない場合は、[表示] メニューの [ツールボックス] をクリックします。
[ツールボックス] の 3 つのコントロールを Form1 のデザイン サーフェイスに配置します。
Label コントロールを Form1 の左上隅付近にドラッグします。
DateTimePicker コントロールを Label コントロールのすぐ下にドラッグします。
Button コントロールを、中央付近のフォームの下にドラッグします。
フォームは次のようになります。
フォームおよびコントロールのプロパティを設定するには
フォームのサーフェイスで空白の領域をクリックしてフォームを選択します。
[プロパティ] ウィンドウが表示されていない場合は、[表示] メニューの [プロパティ] をクリックします (または F4 キーを押します)。
[ツールボックス] を閉じて表示領域を広げることができます。
[プロパティ ウィンドウ] のText プロパティの右側をクリックして次のように入力し、フォームのText プロパティ (フォームのタイトル バーに表示されます) を設定します。
Date Chooser
ラベルをクリックして選択し、ラベルの Text プロパティを次のように設定します。
Choose a date:
ボタンをクリックして選択し、ボタンの Text プロパティを次のように設定します。
OK
フォームは次のようになります。
イベント ハンドラ コードの記述
このセクションでは、次のようなイベントが発生したときに実行するコードを記述します。
DateTimePicker コントロールの ValueChanged イベント
イベントを処理するコードを作成するには
ボタンをダブルクリックして、ボタンのクリック イベント ハンドラを追加します (ボタンの既定イベントは Click イベントです)。
このアクションにより、編集領域のタブ付きページに表示されたフォームのコード ビューに、空のイベント ハンドラ メソッドが生成されます。
button1_Click メソッドの左中かっこの後ろにカーソルを移動して Enter キーを押し、イベントが発生したときに実行する次のコードを入力します。
Application::Exit();
スコープ解決演算子 (::) を入力すると、IntelliSense によって有効な選択肢の一覧が表示されます。一覧から選択肢を選択して Tab キーを押すか、選択肢をダブルクリックするか、キー入力を続けます。
編集領域の [Form1.h [デザイン]] タブをクリックするか、[表示] メニューの [デザイナ] をクリックして、デザイン ビューに戻ります。
DateTimePicker コントロールをクリックします。
ValueChanged イベント ハンドラを DateTimePicker コントロールに追加するには、[プロパティ] ウィンドウの稲妻のアイコンをクリックしてそのコントロールのイベントを表示します。
ValueChanged イベントをダブルクリックして、コード ビューに空のイベント ハンドラを生成します。
メモ : ValueChanged は DateTimePicker コントロールの既定のイベントです。そのため、DateTimePicker コントロールをダブルクリックしても空のイベント ハンドラを生成できます。
dateTimePicker1_ValueChanged メソッドの左中かっこの後ろにカーソルを移動して Enter キーを押し、イベントが発生したときに実行する次のコードを入力します。
label1->Text=String::Format("New date: {0}", dateTimePicker1->Text);
アプリケーションのユーザーが新しい日付を選択すると、ラベルの Text プロパティがリテラル文字列 "New date:" に設定され、DateTimePicker の Text プロパティがその文字列に追加されます。
Visual Studio には、コードの入力を簡略化するためのいくつかの機能があります。
矢印演算子 (->) を入力すると選択肢が表示され、その一覧から選択できます。
メソッドの左かっこを入力すると、ツールヒント ウィンドウにそのメソッドの各オーバーロードに対する有効な引数が表示されます。別のオーバーロードを表示するには、上方向キーまたは下方向キーを使用します。
オート コンプリートによって、入力した内容から変数名またはメンバが自動的に入力されます。たとえば、「String::Fo」を入力して Ctrl + Space キーまたは Tab キーを押すと、String::Format と自動的に入力されます。
プログラムをビルドして実行するには
[ビルド] メニューの [ソリューションのビルド] をクリックします。
エラーがある場合は、[出力] ウィンドウの [次のメッセージに移動] をクリックします。エラー メッセージのテキストがステータス バーに表示されます。エラーをダブルクリックすると、ソース コードのエラーの行に移動できます。
[デバッグ] メニューの [デバッグなしで開始] をクリックします。作成したアプリケーションが表示されます。
DateTimePicker の下方向キーをクリックして日付を選択し、アプリケーションをテストします。次に示すように、ラベル テキストが変わって、選択した日付が表示されます。
このアプリケーションに、メニュー、他のフォーム、およびヘルプ ファイルなど、さらに多くの機能を追加できます。いろいろと試してみてください。
次の手順
前へ :Win32 アプリケーションの作成 (C++) | 次へ :Windows フォーム コントロールの作成 (C++)