'如果是利用数据库的话:
'(把用户名文本框改成组合框,这样可以选择用户名)
Rs.Open "Select UserName,Pwd From MyTable", "dsn=MyDoc"
  With MyCombo
    Do While Rs.EOF = False
      .AddItem (Rs.Fields("UserName")) '显示的是所有存在用户名
    Rs.MoveNext
    Loop
  End With
Rs.Close'在程序执行过程中不仅要验证密码还要验证用户名的正确与否
Rs.Open "Select UserName,Pwd From MyTable Where UserName='" & MyCombo.text & "' and Pwd='" & TextPwd.Text & "'", "dsn=MyDoc"If Rs.EOF = True Then 
  msgbox ("没有通过")
Else
  Msgbox ("通过")
End if
'以上没有测试,另外不知道这个题目是否完全

解决方案 »

  1.   

    Private Sub cmdOk_Click()
        Dim strUserPass, golusername As String
        '判断用户是否已经输入用户名和密码
        golusername = Trim(txtname.Text)
        strUserPass = Trim(txtpass.Text)
        If golusername = "" Then
            MsgBox "请输入用户名", vbExclamation, "登录提示"
            txtname.SetFocus
            Exit Sub
        End If
        If strUserPass = "" Then
            MsgBox "请输入密码", vbExclamation, "登录提示"
            txtpass.SetFocus
            Exit Sub
        End If
        '判断用户登录信息是否正确
        sRs.Open "select * from 操作员 where 操作员='" & golusername & "'", sCon, adOpenStatic, adLockOptimistic
        If sRs.EOF Then
            MsgBox "没有此用户", vbCritical, "登录错误"
            txtname.SelStart = 0
            txtname.SelLength = Len(txtname.Text)
            txtname.SetFocus
            sRs.Close
            Exit Sub
        End If
        sRs.Close
        sRs.Open "select * from 操作员 where 操作员='" & golusername & "' and 密码='" & strUserPass & "'", sCon, adOpenStatic, adLockOptimistic
        If sRs.EOF Then
            MsgBox "密码错误", vbCritical, "登录错误"
            txtpass.SelStart = 0
            txtpass.SelLength = Len(txtpass.Text)
            txtpass.SetFocus
            sRs.Close
            Exit Sub
         End If
        sRs.Close
          Form1.Show
        Unload Me
    End Sub