電卓 整数値の入力 [VB]

VB2012-2017

ラベルに入力数値を表示する

数字1ボタン~数字9ボタンを押す(クリックする)とボタン上の数字を、既に表示している数値の最後尾に追加表示するプログラムを作成します。

サンプルプログラム

たとえば、BtnTwoボタン、BtnOneボタン、BtnThreeボタンの順に押したら、213と表示するようにプログラムを修正します。

前回と同様にボタンは三つのままでもよいですが、0~9まで用意しても同じようになるので、時間がある方は、ボタンを9まで追加してみてください。

画面

各ボタンとラベルのプロパティを表のように設定します。LblAnserのTextプロパティは0に設定しておきます。

コントロール プロパティ 設定値
LblAnser AutoSize False
BorderStyle Fixed3D
Text 0
BtnOne Text 1
BtnTwo Text 2
BtnThree Text 3
BtnFour Text 4
コントロール プロパティ 設定値
BtnFive Text 5
BtnSix Text 6
BtnSeven Text 7
BtnEight Text 8
BtnNine Text 9
BtnZero Text 0

数字1ボタンを選択してダブルクリックすると、図のように[BtnOne]と[Click]の画面が表示されます。ほかのボタンも同様に[BtnTwo]と[Click]、[BtnThree]と[Click]のようになります。ここにクリック時に実行したいプログラムを記述します。

ボタンクリック処理

たとえば、数字2、数字1、数字3の順にクリックして表示する213は、プログラム内部では数値としてではなく、文字列として認識しています。

したがって、数字ボタンを押せば、現在LblAnserに表示中の文字列に押したボタンの文字3を連結することになります。つまりプログラムでは、現在LblAnserのTextプロパティが保持している文字列に、次に押したボタンの文字扱いの数字を、文字列連結演算子を使って連結後、表示するようにします。

Private Sub BtnOne_Click(sender As Object, e As EventArgs) Handles BtnOne.Click

    LblAnser.Text = LblAnser.Text & "1"

End Sub

上のプログラムは、複合代入演算子を使って、LblAnser.Text &= "1" のようにも書くことができます。

BtnTwoボタンクリック処理も同様なプログラムになります。

Private Sub BtnTwo_Click(sender As Object, e As EventArgs) Handles BtnTwo.Click

    LblAnser.Text = LblAnser.Text & "2"

End Sub

BtnThreeボタンクリック処理も同様なプログラムになります。以下同様に各数字ボタンに対応するようにプログラムを作成していきます。

Private Sub BtnThree_Click(sender As Object, e As EventArgs) Handles BtnThree.Click

    LblAnser.Text = LblAnser.Text & "3"

End Sub

これで今回のプログラムは完成です。プログラムを実行してみましょう。押したボタン順に数字が表示されれば、プログラムは完成です。

実行画面