使用 3D Connexion SDK / 使用变量
大多数程序依赖于一组变量。这些是让计算机存储和调用信息片段的方式。它就像一个用来存储信息的盒子。你在**声明**变量时给它一个名字。声明变量告诉计算机三件事
1:名称
2:它应该存储什么类型的信息
3:初始值
名称必须是一个尚未使用的词。Visual basic 检查名称是否正确,如果存在问题,会告诉你。使用一些容易记住的词(Time_taken 而不是 t),但要快于输入(MyChNum 而不是 My_Chosen_Number)。
数据类型很重要。最常见的类型是**整数** - 整数,例如 15,**单精度** - 带小数部分的数字,例如 14.560385,**双精度** - 带小数部分的数字,需要非常精确,例如 14.359649064923490,以及**字符串**,一段文本,例如“一段文本”。
我们在 Visual basic 中声明变量的方式是使用单词“Dim”。以下是如何将名为 MyVar 的变量声明为字符串文本。
Dim MyVar As String = "This is the initial value"
让我们进入我们的“你好世界”应用程序并添加变量。你可以在程序的任何地方添加变量,但它所在的位置决定了它可以用于什么。如果我们在 Form1 的描述中添加它,它可以在程序中的任何地方使用
Public Class Form1 Dim MyVar As String = "This is the initial value"
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Button1.Text = "Hello World" End Sub
End Class
你可能已经注意到,对象的属性都是变量。
赋值只是设置变量的值。你像这样设置值
A = 1
将 A 的值设置为 1。
A = B
将 A 的值设置为 B 的值。
A = 23 * B
将 A 的值设置为 B 的值的 23 倍。
我们也可以在赋值中使用 A
A = A + 1
这将 A 的值增加 1。
A = A * 2
这将 A 翻倍。
A = A / 2
这将 A 减半。
让我们创建一个应用程序,计算按钮被按下次数。
就像在“你好世界”应用程序中一样,创建一个新程序并添加一个按钮。转到事件列表并为按钮添加一个单击事件。你的代码现在应该如下所示
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click End Sub End Class
让我们创建一个名为“counter”的变量。我们不需要它有小数部分,所以我们将类型设置为整数。它应该从 0 开始。此代码如下
Dim counter As Integer = 0
因为这个变量需要在 Button1 未被点击时保存,所以它需要放在程序的主要部分
Public Class Form1 Dim counter As Integer = 0 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click End Sub End Class
当 Button1 被按下时,counter 应该增加 1
Counter = Counter + 1
Public Class Form1 Dim counter As Integer = 0 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Counter = Counter + 1 End Sub End Class
现在,我们需要添加一行代码来更新按钮上的文本
Public Class Form1 Dim counter As Integer = 0 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Counter = Counter + 1 button1.text = Counter End Sub End Class
请注意 Button1.Text 实际上是一个字符串。如果你使用其他语言,你需要在将值赋给不同的类型之前进行变量类型转换。
运行你的代码以查看程序。
通常,你需要为变量添加限制。让我们为我们的表单添加一个进度条
(图像)
看看属性。Value 属性设置进度条的进度 - 注意当它改变时它会执行一个漂亮的动画。
这个值有限制;它不能大于 100 或小于 0。有点说得通;我从来没有复制过文件 110%。如果你尝试将 Value 设置为 200,你的程序将会崩溃。为了阻止这种情况,我们需要将我们即将使用的值与最大值进行比较。我们需要使用相对性表达式
相对性本质上比较两个值。相对性表达式这样表达
A = 1
这个表达式实际上是另一种形式的变量;一个布尔变量。这个变量要么为 TRUE,要么为 FALSE。如果 A=1,则 (A = 1)=TRUE。
它与赋值相同,但必须在不同的位置使用。我稍后会讲到。以下是一些其他的相对性表达式
A > 1
A 大于 1
A < 1
A 小于 1
A <> 1
A 不等于 1
A <= 1
A 小于 1,或 A 等于 1
A >= 1
A 大于 1,或 A 等于 1
我们可以使用**AND、OR、NOT** 或**XOR** 条件组合表达式。**And** 表示两个表达式必须为 TRUE,**OR** 表示两个表达式都不为 FALSE,**XOR** 表示其中只有一个为 TRUE。Not 用于将 TRUE 更改为 FALSE,将 FALSE 更改为 TRUE。
not(TRUE) = false TRUE or FALSE = true FALSE xor TRUE = true TRUE xor TRUE = false
我们对进度条有两个条件
counter >= 0 counter <= 100
这两个条件都必须为真才能让程序正常运行,所以让我们使用 and 来组合它们
(counter >= 0) and (counter <= 100)
然后我们使用标准英语让程序进行更正。我们输入**If**,然后输入我们的条件,然后输入**Then**。接下来是代码要运行的代码,以**End If** 结束
If (counter >= 0) and (counter <= 100) then Counter = Counter + 1 button1.text = Counter progressbar1.value = counter End If
这里有一个问题。如果我们测试程序并将 Counter 增加到 100,然后再次按下按钮并尝试将进度条增加到 101。这会导致程序崩溃。问题在于我们提供指令的顺序
1. 检查 Counter 的值是否正确
2. 将 Counter 加 1
3. 更新表单
Visual Basic 按行执行;它按顺序执行每行。我们需要重新排列程序。
2. 将 Counter 加 1
1. 检查 Counter 的值是否正确
3. 更新表单
Counter = Counter + 1 If (counter >= 0) and (counter <= 100) then button1.text = Counter progressbar1.value = counter End If
我们可以向此代码添加更多内容;如何将值设置为 0 一旦它到达顶部?为此,我们需要一个**Else** 部分。
counter = counter + 5 If (counter >= 0) And (counter <= 100) Then Button1.Text = counter ProgressBar1.Value = counter Else counter = 0 End If
此处使用的代码是一个决策过程
If Condition Then Things to do if Condition = TRUE Else Things to do if Condition = FALSE End If