用VB设计登陆界面

2024-11-22 12:06:52
推荐回答(4个)
回答1:

用VB新建一个工程,在窗体Form1上画两个label控件,一个是Label1一个是Label2,把Label1的Caption属性设为“用户名”,Label2的Caption属性设为“密码”,然后分别在这俩Label右边各画一个textbox控件,一个叫Text1,一个叫Text2,把Text2的PasswordChar属性设为“*”,同时把两个Textbox的Text属性设为空(就是都清空),然后在窗体的下部合适的位置画两个CommandButton控件,一个叫Command1,另一个叫Command2,分别设置他们的Caption属性为“确定”和“取消”。
界面就画完了,下面是代码。
先点菜单项里的工程下面的引用,找到Activex Data Objects 2.6或以上版本的类库,选中前面的对勾,然后确定,该操作是用来引用ADO对象的。
双击确定按钮,写入以下代码。
dim conn as new adodb.connection
dim rs as new adodb.recordset

if text1.text="" or text2.text="" then
msgbox "对不起,用户名与密码不能为空",vbinformation,"输入错误"
exit sub
end if

conn.connectionstring="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=(这里去掉括号写入你的数据库文件路径形如:c:\aaa\bbb.mdb,这是Access数据库的用法);Persist Security Info=False"

conn.open
rs.open "select * from tbl_user where username='" & text1.text & "' and password='" & text2.text & "'",conn,3,3
if rs.recordcount<>0 then
'此处加入登录完成后要执行的操作,如果是要显示form2则参考下文
load form2
form2.show
rs.close
conn.close
unload me
else
'此处为密码验证失败。
msgbox "对不起,登录失败",vbinforamtion,"提示"
rs.close;
conn.close;
exit sub
end if

实现以上代码需要有一个用来连接的数据库,里面起码要有一张名为tbl_user的表,里边起码有两个字段,一个叫username,一个叫password,如果是Access库,则都设为“文本”类型,如果是SQL库,则都设为Varchar或nVarchar类型,还要把上面代码的连接字串修改,连接字串的获取方法很简单,你在任何路径下新建一个文本文件(记事本文件),把基扩展名改为udl,然后双击打开,按提示设置好后,再用记事本打开该文件,最后一行内容即为连接字串。
至于修改的话你可以给我邮箱里发邮件我给你详细代码。太长了这里贴出来容易出问题。jialiu830205@163.com

回答2:

public con as adodb
Private Sub cmd_Ok_Click()
On Error GoTo errHandler
'建立全局性的数据连接
Set con = New ADODB.Connection
Dim strcon As String
strcon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
strcon = strcon & App.Path & "\weldES.mdb" & ";Persist Security Info=True"
con.Open strcon '找开数据库
'取得用户输入的用户名和密码
Dim user As String, pwd As String
user = txt_User
pwd = txt_Pwd
Dim strSQL As String
Select Case userType
Case 0: '若身份为管理员
strSQL = "select * from admin where userName='" & user & "' and password='" & pwd & "'"
Case 1: '若为普通用户
strSQL = "select * from userGen where userName='" & user & "' and password='" & pwd & "'"
End Select

Dim r As New ADODB.Recordset
r.Open strSQL, con, adOpenStatic

'用户密码错误的次数,如果错误次数超过3次,则退出系统
Static nTryCount As Integer
If r.EOF Then
MsgBox "对不起,无此用户或者密码不正确!请重新输入!", vbCritical, "错误"
txt_User.SetFocus
txt_User.SelStart = 0
txt_User.SelLength = Len(txt_User)
nTryCount = nTryCount + 1
If nTryCount >= 3 Then
MsgBox "你无权操作本系统", vbCritical, "焊接工艺专家系统"
Unload Me
con.Close
End If
Else
Unload Me
frmMain.Show
userNamenow = Trim(txt_User.Text) '记录当前用户名
End If
r.Close
Exit Sub
errHandler:
MsgBox Err.Description, vbCritical, "错误"

End Sub

这是我最近调试成功的,希望对你有用

回答3:

你想问的问题我也想知道

回答4:

把你代码发出来看看