我想将精确变量的值传递给另一个表单... 更确切地说,我正在构建一个玩家回答几个问题的游戏,所以我想将包含正确答案的变量传递给另一个形式作为最终游戏窗口并显示得分......我是在最终游戏窗口中使用这种代码:
Public Class Form2
Public Property CCount As Integer
Private Sub Form5_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Label1.Text = CCcount
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
CCount = 0
Form1.Show()
Me.Close()
End Sub
End class
这是主要形式:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'Lines of code
Form2.CCount +=1
'Lines of code
'Me.Hide()
'Form2.Show()
EndSub
我第一次“玩游戏”一切正常,但如果尝试重播它,显示分数永远不会改变......它仍然与第一次运行相同...... 我有什么想法可以解决这个问题吗?
答案 0 :(得分:3)
在加载表单时,只将CCount
的值分配给Label
Load
事件只引发了一次。
将标签更新代码放在CCount
属性Setter
Private _CCount As Integer
Public Property CCount As Integer
Get
Return _CCount
End Get
Set (value As Integer)
If _CCount = value Then Exit Property
_CCount = value
Me.Label1.Text = _CCount.ToString()
End Set
End Property