好学IT学院:IT信息技术分享交流平台
标签:VB  来源:互联网  作者:罪满天下  发布时间:2009-05-19  ★★★加入收藏〗〖手机版
摘要:学VB就到这来了,感觉这好!呵呵, 经过几天的学习,总结一下,做点东西,当是自己的作业吧!请大家帮忙完善一下! 才学,所以写的不是很规矩,也很烦杂。…

学VB就到这来了,感觉这好!呵呵,
经过几天的学习,总结一下,做点东西,当是自己的作业吧!请大家帮忙完善一下!
才学,所以写的不是很规矩,也很烦杂。

内容:
     做个登陆程序,以VB+Access。
功能:
    1、验证。验证用户名的正确与否、密码与用户名符合与否
    2、人性化设计。
          ①、输入用户名后,无论是鼠标移动到密码框,还是按“Tab”键到密码框,都搜索用户名的存在与否,但不报错
          ②、输入密码后,选者状态在“确定”按钮上。
          ③、确定后检验,用户名为空时,光标停在用户名框,密码空停密码输入框。
控件:
    TextBox、CommandButton、PictureBox、Timer、ADO

程序内容:
①:控件
   2   TextBox
   2   CommandButton
   1   PictureBox
   1   Timer
②:程序
     'form1程序
Private Sub Command1_Click()
   Unload Me
End Sub

Private Sub Command2_Click()
   Dim ConStr As String
   If text_user.Text = "" Then
    MsgBox "请输入用户名!", vbOKOnly + vbExclamation, "登陆错误"
    text_user.SetFocus
    Exit Sub
   End If
  
   Set cn = New ADODB.Connection
   Set rs = New ADODB.Recordset
   ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\ttj02.Mdb"
   cn.Open ConStr
   cn.CursorLocation = adUseServer
   rs.Open "Select * from dbuser", cn, adOpenKeyset, adLockPessimistic
   If rs.RecordCount > 0 Then
    If text_user.Text <> "" Then
       Set rs1 = New ADODB.Recordset
       Dim TextUserName
       TextUserName = Left(text_user.Text, 4)
       rs1.Open "Select * From dbuser Where User_nb= '" & TextUserName & "'", cn, adOpenKeyset, adLockPessimistic
       If rs1.RecordCount > 0 Then
          text_user.Text = Left(text_user.Text, 4) & rs1.Fields("user_zhuwu")
          Text_password.SetFocus
          If Text_password <> "" Then
             If rs1.Fields("User_Nb") = TextUserName And rs1.Fields("User_password") = Text_password.Text Then
                Form3.Show
                Unload Me
             Else
                MsgBox "密码错误!", vbExclamation + vbOKCancel, "登陆错误"
                text_user.Text = ""
                Text_password = ""
                text_user.SetFocus
             End If
          Else
             MsgBox "请输入密码!", vbExclamation + vbOKCancel, "登陆错误"
          End If
       Else
          MsgBox "沒有用戶信息,請確定!", vbExclamation + vbOKCancel, "登陆错误"
          text_user.Text = ""
          Text_password = ""
          text_user.SetFocus
          Exit Sub
       End If
       rs.Close
    End If
   End If
End Sub

Private Sub Text_password_LostFocus()
   If text_user.Text = "" Then
    text_user.SetFocus
   Else
    If Text_password.Text <> "" Then
       Command2.SetFocus
    End If
   End If
End Sub

Private Sub Text_password_Validate(Cancel As Boolean)
   If text_user.Text = "" Then
    text_user.SetFocus
   Else
    If Text_password.Text = "" Then
       Text_password.SetFocus
    Else
       Command2.SetFocus
    End If
   End If
End Sub

Private Sub text_user_LostFocus()
   If text_user.Text <> "" Then
    Dim ConStr As String
    Set cn = New ADODB.Connection
    Set rs2 = New ADODB.Recordset
    ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\ttj02.Mdb"
    cn.Open ConStr
    cn.CursorLocation = adUseServer
    rs2.Open "Select * From dbuser Where User_nb= '" & TextUserName & "'", cn, adOpenKeyset, adLockPessimistic
    If rs2.RecordCount > 0 Then
       text_user.Text = text_user & rs2.Fields("user_zhuwu")
       Text_password.SetFocus
       rs2.Close
    Else
       text_user.Text = text_user.Text
       Text_password.SetFocus
       Exit Sub
    End If
   Else
    text_user.SetFocus
   End If
End Sub

Private Sub text_user_Validate(Cancel As Boolean)
Dim ConStr As String
Set cn = New ADODB.Connection
   ConStr = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\ttj02.Mdb"
   cn.Open ConStr
   cn.CursorLocation = adUseServer
   Dim TextUserName
   TextUserName = Left(text_user.Text, 4)
   If text_user.Text <> "" Then
    Set rs3 = New ADODB.Recordset
    rs3.Open "Select * From dbuser Where User_nb= '" & TextUserName & "'", cn, adOpenKeyset, adLockPessimistic
    If rs3.RecordCount > 0 Then
       text_user.Text = Left(text_user.Text, 4) & rs3.Fields("user_zhuwu")
       Text_password.SetFocus
       rs3.Close
    Else
       text_user.Text = Left(text_user.Text, 4)
       Text_password.SetFocus
       Exit Sub
    End If
   End If
  
End Sub

'form2程序
Private Sub Form_Load()
  Me.Show
  Me.Timer1.Interval = 3000
  Me.Timer1.Enabled = True
End Sub

Private Sub Timer1_Timer()
   Form1.Show
   Unload Me
End Sub

呵呵 没看昏吧??   大家下下去弄弄!谢谢大家的支持!
推荐新手学习用!

原帖及讨论:http://bbs.bccn.net/thread-49756-1-1.html

Visual Basic变量、常数和数据类型及过程概述
  变量、常数和数据类型概述在 Visual Basic 环境下进行计算时,常常需要临时存储数据。例如,可能想要计算几个值,将它们进行…
  • 好学触屏公众号虎力全开、杨帆起航!
  • 好学考试H5触屏版开放内测