跳轉到內容

使用 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
華夏公益教科書