私はグローバル変数とタイマーの範囲を理解するための簡単なプログラムを書いています。vb.netのグローバル変数スコープ
Public Class Form1
Dim gobalVar As Integer
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
globalVar = 0
End Sub
Private Sub Timer1_Tick(sender As Object, e As EventArgs) Handles Timer1.Tick
Messagebox.Show(">" + globalVar.ToString)
globalVar = 1
Messagebox.Show("<" + globalVar.ToString)
End Sub
End Class
私はタイマーを5秒に設定しました。 タイマがトリガされているときにglobalVarが0になります。フォームがロードされているときに0に設定されているため、globalVarを1に設定した後にメッセージボックスでメッセージを確認します。しかし、ボックスの表示> 0、何らかの理由でglobalVarが0に戻ります。
グローバル変数であるため、globalVarを1にしないでください。 VBでglobalVarをグローバル変数として正しく宣言していますか?