初心者のためのゲームプログラミング入門

プログラミングとゲームの杜

初心者のためのプログラミング入門 & ゲームプログラムの作り方入門

VisualBasic 2017 入門

22.算数ドリルを作ろう その7

 

今回は [ 算数ドリルを作ろう その6 ] の続きです。

この講座を作っているとき「解答を説明する」というより「解き方を説明する」ように意識しています。
そのため話が長くなっています。

プログラミングって「 物事を噛み砕いてそれを再構築していく作業 」だと思ってたりします。
解答を記憶するよりプロセス(過程や方法など)に慣れて下さい。

 

 

出題した数をカウントしよう

出題した数をカウントする仕組みを作ります。
ずっと続けているより、決まった問題数を解く方がモチベーションがあがります。

 

vb 出題数をカウントする

 

出題数をカウントする変数 mondaiCnt と、
出題の最大数を設定する変数 mondaiMax を用意しました。
それから成績を表示するためのサブルーチン Seiseki を作りました。
まだ成績を表示しませんが、解答欄を入力できないようにして問題をクリアします。

出題数のカウントで(27 行目)
mondaiCnt += 1
と書きました。これは次の代入式と同じ意味です。
mondaiCnt = mondaiCnt +1
覚えておくと便利です。

 

 

それでは実行してみましょう。
出題数は5問としてあるので、それ以降は入力できなくなります。

 

問題が終了すると入力できない

 

 

成績を表示しよう

成績を表示するようにします。
カウントした正解数を最後に表示します。
追加のあるサブルーチンのみ表示しています。場所を間違えないようにしましょう。

 

成績をカウントするプログラム

 

正解数をカウントする変数 seikaiCnt を用意しました。
開始ボタンが押されたらカウントを初期化し
答え合わせのとき正解ならカウントし
最後に成績として結果を表示する。
といったシンプルな仕組みです。

 

 

それでは実行してみましょう。
正解数が表示されるようになりました。

 

正解数を表示する

 

 

ラジオボタンとグループボックス

問題数や計算タイプを変更する仕組みにラジオボタンを使ってみましょう。
タイプをグループ分けするのにはグループボックスを使います。

完成すると次のようになります。
ラジオボタンは、どれか1つだけを選択させるときに使います。

 

vb ラジオボタンとグループボックス

 

 

それではグループボックスを配置してみましょう。
ツールボックスのコンテナーを開き、GroupBox をフォーム上へ配置します。
配置したら適当にサイズを調整して、2つ目のグループボックスを配置しましょう。
2つ目も適当にサイズを調整します。
全体の調整はあとでします。ここは適当でかまいません。

 

vb グループボックスを配置

 

 

次はラジオボタンです。
ラジオボタンはコモンコントロールにあります。
RadioButton をグループボックスの中に配置していきます。
グループ1に2つ、グループ2に3つ配置します。

 

vb ラジオボタンを配置する

 

 

実行してみましょう。
グループボックス内に配置するだけで、すでにラジオボタンとしての機能が働きます。
それぞれのグループで1つだけ選べることを確認してください。

 

ラジオボタンは1つだけ選択できる

 

 

 

プロパティの変更

グループボックスの Text プロパティを変更すると見出しが変わります。
GroupBox1 の Text を「 タイプ 」
GroupBox2 の Text を「 問題数 」に変更しましょう。

 

vb グループボックスのプロパティ変更

 

 

次に、ラジオボタンの Text プロパティも変更しましょう。
「足し算」「引き算」「10問」「20問」「30問」
というように変更します。

 

vb ラジオボタンのTextプロパティを変更する

 

 

これですべての配置が終わりました。
全体を見ながら、それぞれの配置を変更してください。
マウス操作だけでも綺麗に並べられると思いますが、上手くできないときは
配置プロパティの項目を直接変更してもいいと思います。

 

コントロールの配置を整える

 

ちなみに上の画像の10問は、プロパティに書き込むとき
10と問の間にスペースを1つ入れてあります。(20問30問も同様に)
フォントのタイプによっても違いますが、スペースを入れた方が綺麗に見える場合があります。

 

 

Checked プロパティ

ここで実行してみます。

 

vb ラジオボタンのチェックプロパティ

 

ラジオボタンにチェックが付いてません。(黒い点がない)
このままでは、どれか選択してもらう必要が出てきます。
それでは不親切なので、足し算と10問をデフォルトでチェックありの状態にします。

 

 

まず、足し算をクリックして Checked プロパティを True に変更します。
次に10問をクリックして同じく変更します。

 

vb ラジオボタンの checked プロパティ

 

 

実行してみます。
足し算と10問にチェックが付きました。

 

vb ラジオボタン 初めからチェックを付ける