注册 登录
编程论坛 VB6论坛

求教怎样使按钮满足条件才能使用

denghua4678 发布于 2013-05-03 18:52, 700 次点击
各位大神,我想使cmdNext按钮在TEXT1,TEXT2,TEXT3都输入数值之后才能按,之前都是灰色,以下是我的程序,可是不能用,请问错在哪里了
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)

      
End Sub
Private Sub Form1_Load()
 If Len(Text1) = 0 And Len(Text2) = 0 And Len(Text3) = 0 Then
       cmdNext.Enabled = False
       Else
        cmdNext.Enabled = True
       End If

End Sub
Private Sub cmdClear_Click()
Text1.Text = ""
Text2.Text = ""
Text3.Text = ""
End Sub

Private Sub cmdNext_Click()

Form2.Show
form1.Hide

End Sub
2 回复
#2
lowxiong2013-05-03 19:16
不论窗体名称是什么,针对窗体的事件都是以form_开头的,不会是“窗体名_”,但窗体方法是以“窗体名.方法”的,再就是逻辑错误,“If Len(Text1) = 0 Or Len(Text2) = 0 Or Len(Text3) = 0 Then”应该是or,不是and,否则任何一个text有内容都会点亮cmdNext。拷贝下列代码就可以了。
'********************************************************************************
Private Sub Frame1_DragDrop(Source As Control, X As Single, Y As Single)

      
End Sub
Private Sub Form_Load()
  If Len(Text1) = 0 Or Len(Text2) = 0 Or Len(Text3) = 0 Then
    cmdNext.Enabled = False
  Else
    cmdNext.Enabled = True
  End If
End Sub
Private Sub cmdClear_Click()
  Text1.Text = ""
  Text2.Text = ""
  Text3.Text = ""
End Sub

Private Sub cmdNext_Click()
  Form2.Show
  Form1.Hide
End Sub

Private Sub Text1_Change()
  Form_Load
End Sub

Private Sub Text2_Change()
  Form_Load
End Sub

Private Sub Text3_Change()
  Form_Load
End Sub
#3
dongfangnan2013-08-14 14:09
根据楼主的要求,都输入数的话。
应该吧and改成or
1