正解は「1431」でした。これはつまり、VisualBasic
ではテキストボックスの中身を「14」や「31」という整数ではなく「1」「4」「3」「1」という文字の集まりとしか認識していないことを意味します。では、本当に電卓を作りたくなったらどうすればいいのでしょうか。
こういう場合は、整数しか入れることができない変数 (整数型変数) を用意し、テキストボックスの内容を一旦そこに入れてから足し算します。すると、VisualBasic は「整数と整数の足し算である」と認識してくれます。
論より証拠、実際にプログラムを書いてみましょう。まず、次のように整数型変数を3つ用意します。
Private Sub CommandAdd_Click() Dim A As Integer Dim B As Integer Dim C As Integer TextResult.Text = Text1.Text + Text2.Text End Sub
このように、「Dim A」という変数宣言の後に「As
Integer」と書くことによって、変数を整数専用にすることができます。これで、(実行画面では見えませんが)
プログラムの中に整数型変数が3つできました。
この3つの変数を使って計算するように、プログラムを変更しましょう。下線部分には何が入りますか?
Private Sub CommandAdd_Click() Dim A As Integer Dim B As Integer Dim C As Integer A = Text1.Text B = Text2.Text C = A + B TextResult.Text = C End Sub
完成したら実行して「14」「31」と入力し、結果を確かめましょう。
コラム Integer 以外には何があるの?「Dim ???? As」の後に「Variant」と書くか「Integer」と書くかで、その変数の型が決まりました。VisualBasic には他にもいくつかの型があります。
ですが、大抵の場合は Variant 型で用が足ります。 |
Text1.Width に次の値を入れて「Enter」キーを押し、Text1.Width は整数しか受け付けないことを確かめましょう。