*本节主要讲解VB基本运算的原理和类型转换
绘制界面
既然要做计算器,那么现有的界面肯定是不行了。
所以先按照下面的图片来绘制新的界面。
几个文本框分别为:TextBox1、TextBox2、TextBox3。
+和=号的控件是Label,即标签,与TextBox不同的是,用户使用过程中不能自己输入内容。
双击按钮,并且为它添加如下语句:
可以看到输出结果并不是我们认为的2,而是11,把两个字符拼凑起来了。
这是什么原因呢?
原来,系统认为输入的内容是字符,而不是数字,因此我们需要对其进行类型转换。
Val是一种函数,作用是把字符串String转换成数字。
同样的,Str也是一种函数,作用是把数字转换成字符串。
尽管现在的VB在这种情况下已经有自动转换类型的能力了,但我们作为初学者,还是以严谨为好。
那么我们再运行一次
果然,这次就成功了。
那么细心的同学应该注意到了,在输出结果2的前面多出了一个空格。这是什么原因呢?
原来,如果结果是负数,那么前面就会多出一个符号,为了与负号对齐,就出现了这个空格,我们称之为“前导空格”。
如果不想要这个空格,我们可以把Str改成CStr,完整代码如下,自己去试试吧。
所以先按照下面的图片来绘制新的界面。
几个文本框分别为:TextBox1、TextBox2、TextBox3。
+和=号的控件是Label,即标签,与TextBox不同的是,用户使用过程中不能自己输入内容。

VB.NET
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
TextBox3.Text = TextBox1.Text + TextBox2.Text
End Sub
然后我们尝试运行一下这些代码。。。比如说1+1
这是什么原因呢?
原来,系统认为输入的内容是字符,而不是数字,因此我们需要对其进行类型转换。
VB.NET
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim a As Integer
Dim b As Integer
a = Val(TextBox1.Text)
b = Val(TextBox2.Text)
TextBox3.Text = Str(a + b)
End Sub
因此,我们创建两个类型为Integer的变量。Integer就代表整数。至此,加上上一节学到的String,我们已经掌握了两种类型了。Val是一种函数,作用是把字符串String转换成数字。
同样的,Str也是一种函数,作用是把数字转换成字符串。
尽管现在的VB在这种情况下已经有自动转换类型的能力了,但我们作为初学者,还是以严谨为好。
那么我们再运行一次

那么细心的同学应该注意到了,在输出结果2的前面多出了一个空格。这是什么原因呢?
原来,如果结果是负数,那么前面就会多出一个符号,为了与负号对齐,就出现了这个空格,我们称之为“前导空格”。
如果不想要这个空格,我们可以把Str改成CStr,完整代码如下,自己去试试吧。
VB.NET
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim a As Integer
Dim b As Integer
a = Val(TextBox1.Text)
b = Val(TextBox2.Text)
TextBox3.Text = CStr(a + b)
End Sub
End Class