注册 登录
编程论坛 VB6论坛

vb6.0提示变量未定义

小王2188 发布于 2010-12-27 17:34, 6064 次点击
Option Explicit

Dim m As Long

Private Sub Command1_Click()
    Timer1.Enabled = True
    m = Val(Text1.Text) * 60
    Label1.Caption = "现在开始倒计时"
    Command1.Visible = False
End Sub

Private Sub Timer1_Timer()
    m = m - 1
    If m < 0 Then
       Timer1.Enabled = False
       MsgBox "时间到! ", O, "倒计时"
       Label1.Caption = "请输入计时的分钟数"
       Text1.Text = ""
       Command1.Visible = True
    Else
        Text1.Text = m
End Sub
做倒计时器,编译时提示变量未定义是怎么回事,请高手解答
7 回复
#2
风吹过b2010-12-27 19:23
最后少一个 END if
不知是不是这个原因。
#3
qq10235692232010-12-27 19:31
Option Explicit

Private m As Long  '定义为私有成员

Private Sub Command1_Click()
    Timer1.Enabled = True
    m = Val(Text1.Text) * 60
    Label1.Caption = "现在开始倒计时"
    Command1.Enable = False  '最好改为这样
End Sub

Private Sub Timer1_Timer()
    m = m - 1
    If m < 0 Then
       Timer1.Enabled = False
       MsgBox "时间到! ", vbOkOnly, "倒计时"  '没有0的定义吧
       Label1.Caption = "请输入计时的分钟数"
       Text1.Text = ""
       Command1.Enable = True  '最好如此
    Else
        Text1.Text = m
    End if  '别忘记了
End Sub


[ 本帖最后由 qq1023569223 于 2010-12-29 09:24 编辑 ]
#4
睿翼2010-12-27 22:54
Option Explicit
一定要声明变量
#5
睿翼2010-12-27 22:55
你可以把Option Explicit 去掉也行

#6
Artless2010-12-28 01:38
MsgBox "时间到! ", O, "倒计时"
那个是个o不是0
#7
我锤慈悲2013-05-04 21:12
五楼正解
#8
ty12501322013-05-07 21:40
DIM M 改成 PUBLIC M 作用域原因
1