vb 布尔值 的一个简单问题

来源:百度知道 编辑:UC知道 时间:2024/07/02 02:24:31
我想通过布尔值 做一个判断再按 退出按钮时 有没有保存
然后 设计了一段代码 结果却改变不了 一直都是缺省值
就直接退出了 没有弹出对话框 帮忙看一看

Private Sub Form_Load()
Dim tc As Boolean
End Sub

Private Sub conHold_Click()
tc = true
End Sub

Private Sub conCancel_Click()
If tc = True Then box = MsgBox("还没有保存,您确定要退出吗?", vbOKCancel + vbQuestion, "设置") _
Else If tc = False Then Unload Me
End Sub

tc在form load里定义的话作用域只限于load,到concancel的时候是未定义变量,始终都是False。
在代码窗口最上面定义的部分写public tc as boolean
或者load里用 static tc as boolean

Private Sub conCancel_Click()
If tc = True Then box = MsgBox("还没有保存,您确定要退出吗?", vbOKCancel + vbQuestion, "设置") _
Else If tc = False Then Unload Me
End Sub

上面这语法都被你能通过了,太配服你了!

和我改的比较一下!
Private Sub conCancel_Click()
If tc = True Then
box = MsgBox("还没有保存,您确定要退出吗?", vbOKCancel + vbQuestion, "设置") _
ElseIf
tc = False Then Unload Me
end if
End Sub

前两句话交换一下位置即可。
=========
Dim tc As Boolean '这两句话交换
Private Sub Form_Load() '一下位置即可

End Sub

Private Sub conHold_Click()
tc = true
End Sub

Private Sub conCancel_Click()
If tc = True Then box = MsgBox("还没有保存,您确定要退出吗?", vbOKCancel + vbQuestion, "设置") _
Else If tc = False Then Unload M