Public Class Form1    Private Sub load_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles load.Click, load.Click        Dim Cnn As New ADODB.Connection '定义数据链接对象,保存连接数据库信息;请先添加ADO引用
        Dim Rs As New ADODB.Recordset  '定义记录集对象,保存数据表        Dim strCnn = "Provider=SQLNCLI;Server=服务大众;Database=qzsyck;Trusted_Connection=yes;"
        Cnn.Open(strCnn)        Rs.Open("select * from userpw", Cnn)  '定义SQL查询命令字符串        Dim loadTF As Integer
        loadTF = 0        '循环
        Do Until Rs.EOF            If (Rs("user").Value.trim().Equals(user.Text()) And Rs("password").Value.trim().Equals(password.Text())) Then                loadTF = 1            End If            Rs.MoveNext()
        Loop        If loadTF = 1 Then            MsgBox("登录成功")
        Else            MsgBox("登录失败")        End If        Rs.Close()
        Cnn.Close()
    End Sub
End Class代码如上,为什么会重复跳出两个提示框?比如输入正确的用户名密码,提示登录成功,但是却是跳出两遍,反之,登录失败,一样跳出两次提示框??奇怪!!

解决方案 »

  1.   

    Do循环中 loadTF = 1 的下面加上一句:exit do
     
      

  2.   

    上下各加一句,然后测试,怀疑你的鼠标有问题。Private Sub load_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles load.Click
            load.Enabled = False        '
            '你的语句
            '
            load.Enabled = True    End Sub
      

  3.   

      If loadTF = 1 Then
         MsgBox("登录成功")
         exit do
      Else
         MsgBox("登录失败")
         exit do
      End If
    这样改试试
      

  4.   

    这2行Rs.Close(),Cnn.Close()放到If loadTF = 1 Then的前面试试
      

  5.   

    'Private Sub load_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles load.Click, load.Click  改为:Private Sub load_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles load.Click既然用了vb.net,为何不用ADO.NET?