手順 1: プロジェクトの作成とフォームへのラベルの追加
計算クイズの作成における最初の手順は、プロジェクトの作成とフォームへのラベルの追加です。
プロジェクトを作成し、フォームにラベルを追加するには
[ファイル] メニューの [新しいプロジェクト] をクリックします。
Visual Studio Express を使用していない場合は、最初に言語を選択する必要があります。[インストールされたテンプレート] で [C#] または [Visual Basic] を選択します。
[Windows フォーム アプリケーション] アイコンをクリックし、名前として「Math Quiz」と入力します。
フォームのプロパティを設定します。
フォームの Text プロパティを Math Quiz に変更します。
Size プロパティを使用するか、統合開発環境 (IDE: Integrated Development Environment) の右下隅に適切なサイズが表示されるようになるまでドラッグして、サイズを幅 550 ピクセル、高さ 400 ピクセルに変更します。
ユーザーがフォームのサイズを変更できないようにするために、FormBorderStyle プロパティを Fixed3D に変更し、MaximizeBox プロパティを False に設定します。
Label コントロールをツールボックスからドラッグし、そのプロパティを設定します。
(Name) プロパティを timeLabel に変更します。このラベルは、クイズの残り時間の秒数を表示するボックスとして、フォームの右上隅に表示されます。
AutoSize プロパティを False に変更して、ボックスのサイズを手動で変更できるようにします。
BorderStyle プロパティを FixedSingle に変更して、ボックスの枠線を描画します。
Size プロパティを 200, 30 に設定します。
青いスペーサーの線が表示されるまで、ラベルをフォームの右上隅にドラッグします。
[プロパティ] ウィンドウで [Text] をクリックして BackSpace キーを押し、Text プロパティの内容を消去します。
フォント サイズを 15.75 に変更します。[プロパティ] ウィンドウで Font プロパティの横にある正符号をクリックすると、次の図に示すように、Size を含むいくつかのプロパティが表示されます。
フォント サイズが表示された [プロパティ] ウィンドウ
次に、Label コントロールをツールボックスからもう 1 つドラッグし、そのプロパティを設定します。
フォント サイズを 15.75 に変更します。
Text プロパティを Time Left に設定します。
このラベルをドラッグして、timeLabel ラベルの左に並べて配置します。
次に、加算問題のコントロールを追加します。Label コントロールをツールボックスからドラッグし、そのプロパティを設定します。
Text プロパティを ? (疑問符) に設定します。
[AutoSize] プロパティを [False] に設定します。
Size プロパティを 60, 50 に設定します。
フォント サイズを 18 に変更します。
TextAlign プロパティを MiddleCenter に変更します。
Location プロパティを 75, 75 に変更して、このラベルをフォーム上に配置します。
(Name) プロパティを plusLeftLabel に変更します。
plusLeftLabel ラベルを選択してコピーします (Ctrl キーを押しながら C キーを押すか、[編集] メニューの [コピー] をクリックします)。その後、以下の作業を行います。
コピーしたラベルを 3 回貼り付けます (Ctrl キーを押しながら V キーを押すか、[編集] メニューの [貼り付け] をクリックします)。
新しい 3 つのラベルを、ボックスが plusLeftLabel ラベルの右に 1 行に並ぶように配置します。スペーサーの線を利用して、間隔を調整し、まっすぐになるように配置します。
2 番目のラベルの Text プロパティを + (加算記号) に変更します。
3 番目のラベルの (Name) プロパティを plusRightLabel に変更します。
4 番目のラベルの Text プロパティを = (等号) に変更します。
NumericUpDown コントロールをツールボックスからドラッグし、以下の作業を行います。
フォント サイズを 18 に変更し、幅が 100 になるように調整します。
加算問題の Label コントロールに合わせて、このコントロールをそれらと並ぶ位置までドラッグします。
(Name) プロパティを sum に変更します (NumericUpDown コントロールについては、後ほど詳しく説明します)。これで、クイズの最初の行が完成し、次の図のようになります。
計算クイズの最初の行
加算問題の 5 つのコントロール (4 つの Label コントロールと NumericUpDown コントロール) をすべて選択し、それらをコピーします。その後、以下の作業を行います。
コントロールを貼り付けます。5 つの新しいコントロールがフォームに追加されます。
それらのコントロールが選択されたままなので、いずれかのコントロールをクリックしてすべてのコントロールをドラッグできます。加算のコントロールの下に並ぶようにドラッグします。スペーサーの線を利用して、2 つの行の間隔が十分に確保されるようにしてください。
2 番目のラベルの Text プロパティを – (減算記号) に変更します。
最初の疑問符のラベルに minusLeftLabel という名前を付けます。
2 番目の疑問符のラベルに minusRightLabel という名前を付けます。
NumericUpDown コントロールに difference という名前を付けます。
5 つのコントロールをあと 2 回貼り付けて、以下の作業を行います。
3 番目の行については、最初のラベルに timesLeftLabel という名前を付け、2 番目のラベルの Text プロパティを × (乗算記号) に変更し、3 番目のラベルに timesRightLabel という名前を付け、NumericUpDown コントロールに product という名前を付けます。
4 番目の行については、最初のラベルに dividedLeftLabel という名前を付け、2 番目のラベルの Text プロパティを ÷ (除算記号) に変更し、3 番目のラベルに dividedRightLabel という名前を付け、NumericUpDown コントロールに quotient という名前を付けます。
[!メモ]
乗算記号 × と除算記号 ÷ は、このチュートリアルからコピーして IDE に貼り付けることができます。
フォームにはコントロールがもう 1 つ必要です。クイズを開始するためのボタンです。Button コントロールをツールボックスからドラッグし、そのプロパティを設定します。
(Name) プロパティを startButton に設定します。
Text プロパティを Start the quiz に設定します。
フォント サイズを 14 に設定します。
AutoSize プロパティを True に設定します。ボタンのサイズがテキストに合わせて自動的に変更されます。
ボタンをフォームの下部にドラッグし、中央に配置されるように移動します。
最後に、startButton コントロールをクリックし、以下の作業を行います。
TabIndex プロパティを 1 に設定します。
NumericUpDown sum コントロールをクリックします。
TabIndex プロパティを 2 に設定します。
その他の NumericUpDown コントロールを設定します。difference コントロールの TabIndex プロパティを 3 に、product コントロールの TabIndex プロパティを 4 に、quotient コントロールの TabIndex プロパティを 5 に設定します。これで、フォームは次の図のようになります。
計算クイズの初期のフォーム
[!メモ]
TabIndex プロパティの目的は、ユーザーが Tab キーを押したときのコントロールの順序を設定することです。いずれかのダイアログ ボックスを開き (たとえば、[ファイル] メニューの [開く] をクリックし)、Tab キーを何度か押してみてください。Tab キーを押すたびに、カーソルが次のコントロールへと切り替わっていくのがわかります。この順序は、そのフォームが最初に設計されたときにプログラマによって決められています。
TabIndex プロパティの動作を確認するには、プログラムを保存して実行し、Tab キーを何度か押します。
続行または確認するには
チュートリアルの次の手順に進むには、「手順 2: ランダムな加算問題の作成」を参照してください。
概要のトピックに戻るには、「チュートリアル 3: 計算クイズの作成」を参照してください。