【実装】設計に基づきプログラムのソース・コードを実装(=コーディング)するまず「(a)Windowsフォーム」のクラスの実装を行う。次の画面を参考に、Windowsフォームのソース・ファイルの名前を「Display.cs」に変更し、クラス名を「Display」に変更しよう。(a)Windowsフォームのクラスの実装Windowsフォームのソース・ファイルの名前を「Display.cs」に変更し、クラス名を「Display」に変更する。ファイル名部分をクリックして少し待つと編集可能な状態になるので、そこでファイル名を「Form1.cs」から「Display.cs」に変更する。2005ではこのようなダイアログが表示される。このダイアログは、ファイル名の変更に合わせてクラス名を自動で一括変更してくれるリファクタリング機能(=外部に影響を与えずに、コードの内容を適切に変更する機能)だ。ここでは「ファイルの名前を変更しようとしています。名前を変更しますか?」と表示されている(が、この文章では意味がおかしい。日本語翻訳のミスで、正しくは「ファイルの名前を変更しようとしています。'Form1'へのすべての参照を、同じように名前変更しますか?」だろう)。ここで[はい]を選択すれば、クラス名が「Form1」から「Display」に変更され、プロジェクト内で使われている「Form1クラス」がすべて「Displayクラス」に変更される。ちなみに[いいえ]を選択すると、ファイル名の変更だけで、クラス名は変更されない。上記のリファクタリング機能によりクラス名は「Display」に変更されているはずだ。手動で変更するには、フォームをクリックして(誤ってダブルクリックしないように注意すること)、[プロパティ]ウィンドウの「デザイン」カテゴリの中にある[(Name)]項目の値を変更すればよい。以上の設定が終わったら、プログラムが正常なソース・コードになっているかどうか確認するために、1度プログラムをビルドしてみよう。ビルドはメニュー・バーから[ビルド]−[ソリューションのビルド]を実行する。すると、正常にビルドが終了するはずである。見つかりませんでした。ディレクティブまたはアセンブリ参照が不足しています。」というビルド・エラーが表示されるような場合は、先ほどのクラス名を「Form1」から「Display」に変更する作業が完全でなく、まだ「Form1」という名前を使用しているコードが残っている。このようなビルド・エラーが発生した場合には、次の画面のようにして、適切な修正を行う必要がある(この例では、ソース・コードの「Form1」部分を「Display」に変更する)。ビルド・エラーの対処方法ビルド・エラーが発生すると、[エラー一覧]にビルド・エラーの内容が表示される。ビルド・エラー項目をダブルクリックすると、自動的にコード・エディタが開いて、エラーがあるソース・コードの場所にジャンプする。ここでは「Form1」を「Display」に変更する。以上で再度ビルドを実行すると、今度は正常に終了するはずである。2005では、ビルド・エラーの修正は、このようにして行うので、覚えておいてほしい。■コントロールやコンポーネントを配置する次に「(b)Labelコントロール」の「timeNow」オブジェクトを配置する。これには、次の画面のように、[ツールボックス]からLabelコントロールをフォーム上にドラッグ&ドロップして、コントロールのオブジェクト名を「timeNow」に変更すればよい(なお、コントロールのオブジェクトとは、「コントロールのクラスがフォーム上で実体となったもの」という意味)。(b)Labelコントロールの「timeNow」オブジェクトの配置Windowsフォーム・デザイナで、WindowsフォームにLabelコントロールを配置し、コントロールのオブジェクト名を「timeNow」に変更する。[デザイン]]タブをクリックして、Display.csファイルをWindowsフォーム・デザイナで開く(ちなみに、タブの名前の最後にある「*」は、そのファイルに何らかの変更が加わっていることを意味する)。コントロール]タブをクリックして、既存コモン・コントロールの一覧を表示し、そこからLabelコントロールをWindowsフォーム上にドラッグ&ドロップする。Labelコントロール・オブジェクトのプロパティを設定するために、Windowsフォーム上に追加されたLabelコントロールをクリックして選択する。[プロパティ]ウィンドウの「デザイン」カテゴリの中にある[(Name)]項目の値を、「timeNow」に変更することで、コントロールのオブジェクト名が変わる。最後に、「(c)Timerコンポーネント」の「secTimer」オブジェクトを挿入する。これを行うには、次の画面のように[ツールボックス]ウィンドウからTimerコンポーネントをフォーム上にドラッグ&ドロップして、コンポーネントのオブジェクト名を「secTimer」に変更するだけだ(なお、コンポーネントのオブジェクトとは、「コンポーネントのクラスがフォーム内で実体となったもの」という意味)。(c)Timerコンポーネントの「secTimer」オブジェクトの挿入Windowsフォーム・デザイナで、Windowsフォーム上にTimerコンポーネントをドラッグ&ドロップして追加し、コンポーネントのオブジェクト名を「secTimer」に変更する。(Display.csファイルをWindowsフォーム・デザイナで開いた状態で)[ツールボックス]ウィンドウの[コンポーネント]タブをクリックして既存コンポーネントの一覧を表示し、TimerコンポーネントをWindowsフォーム上にドラッグ&ドロップする(なお、追加されたコンポーネント・オブジェクトは、コントロールのようにWindowsフォーム上に表示されるのではなく、Windowsフォーム・デザイナの下部にあるコンポーネント領域に表示されるので注意してほしい)。Timerコンポーネント・オブジェクトのプロパティを編集するために、Windowsフォーム・デザイナ下部のコンポーネント領域に表示されているTimerコンポーネントをクリックして選択する。[プロパティ]ウィンドウの「デザイン」カテゴリの中にある[(Name)]項目の値を、「secTimer」に変更することで、コンポーネントのオブジェクト名が変わる。ここで再びビルドを行おう。ビルドが正常に終了するはずだ。これで、先の設計図で挙げた3つのオブジェクトがプログラム内にすべてそろったことになる。次にこれらのオブジェクトの外観や動作などの性質、つまりプロパティを詳細に設定していこう。7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。TranslatorはPowerPoint用のアドイン。