VB自带登陆对话框用户名及密码如何设置?
最近在做一个简单的系统,需要有用户名和登陆密码。我直接添加了一个VB自带的登陆对话框,但用户名和密码不知道该如何写了,还请朋友们帮下忙。下边的是代码另外,如果我想有很多用...
最近在做一个简单的系统,需要有用户名和登陆密码。我直接添加了一个VB自带的登陆对话框,但用户名和密码不知道该如何写了,还请朋友们帮下忙。下边的是代码
另外,如果我想有很多用户用不同的用户名登陆该如何操作呢,新手,还望详细说明下。谢过
Option Explicit
Public LoginSucceeded As Boolean
Private Sub cmdCancel_Click()
'设置全局变量为 false
'不提示失败的登录
LoginSucceeded = False
Me.Hide
End Sub
Private Sub cmdOK_Click()
'检查正确的密码
If txtPassword = "password" Then
'将代码放在这里传递
'成功到 calling 函数
'设置全局变量时最容易的
LoginSucceeded = True
Me.Hide
Else
MsgBox "无效的密码,请重试!", , "登录"
txtPassword.SetFocus
SendKeys "{Home}+{End}"
End If
End Sub
Private Sub txtPassword_Change()
End Sub
Private Sub txtUserName_Change()
End Sub 展开
另外,如果我想有很多用户用不同的用户名登陆该如何操作呢,新手,还望详细说明下。谢过
Option Explicit
Public LoginSucceeded As Boolean
Private Sub cmdCancel_Click()
'设置全局变量为 false
'不提示失败的登录
LoginSucceeded = False
Me.Hide
End Sub
Private Sub cmdOK_Click()
'检查正确的密码
If txtPassword = "password" Then
'将代码放在这里传递
'成功到 calling 函数
'设置全局变量时最容易的
LoginSucceeded = True
Me.Hide
Else
MsgBox "无效的密码,请重试!", , "登录"
txtPassword.SetFocus
SendKeys "{Home}+{End}"
End If
End Sub
Private Sub txtPassword_Change()
End Sub
Private Sub txtUserName_Change()
End Sub 展开
3个回答
展开全部
Private Sub cmdCancel_Click()
'设置全局变量为 false
'不提示失败的登录
LoginSucceeded = False
Me.Hide '这里取消登陆一般要设置自动退出,可以通过Unload方法卸载窗体,这里可以改为下一行的代码
'Me.Unload
End Sub
Private Sub cmdOK_Click()
'这里不单单要求指定的密码,还需要指定的帐号
'最好使用模块来做连接操作,这样在各个窗口间就都可以使用同一个连接来进行数据库操作了
'调用模块中的连接数据库函数
call connect()
'开始检查
'检查正确的用户名
'调用记录集连接并查询数据库得出结果
'如果在用户表中查无此用户则返回出错信息
if recordset(txtUserName.text,UserName)=false then
msgbox "您输入的用户名有误,请重新输入!","出错啦!= =|",vbcribitial+vbokonly '囧了,在这里有必要提示一下,msgbox的第二个参数实在是忘了怎么拼,用前四个字母去找找正确的就好,+号后边照搬
else
'检查正确的密码
If recordset(txtPassword.text,Password)=false Then
'将代码放在这里传递
'成功到 calling 函数
'设置全局变量时最容易的
LoginSucceeded = True
'结束后应调用关闭连接子程序关闭与数据库的连接
Call Disconnect()
Me.Hide '登录后应卸载登录窗体,同上最好改成Me.Unload
Else
MsgBox "无效的密码,请重试!", , "登录"
txtPassword.SetFocus
SendKeys "{Home}+{End}"
End If
end if
End Sub
然后就是写有关于连接数据库的东西啦~(我以Access2003数据库为例)
首先新建一个模块,然后把下列代码粘贴进去
Public sub connect()
dim conn as new adodb.connection
connstr="microsoft.jet.oledb.4.0;data source=" & app.path & "/lib.mdb"
conn.open connstr,"admin","",-1
end sub()
Public function recordset(object1 as string,object2 as string)
dim rs as new adodb.recordset
sqlstr="select * from user where" & object2 & "='" & object1 & "'"
rs.open sqlstr,conn,3,2,-1
if rs.EOF and rs.BOF then
……乱了= =详细还是企鹅聊吧,1002086705,备注写百度知道问题
'设置全局变量为 false
'不提示失败的登录
LoginSucceeded = False
Me.Hide '这里取消登陆一般要设置自动退出,可以通过Unload方法卸载窗体,这里可以改为下一行的代码
'Me.Unload
End Sub
Private Sub cmdOK_Click()
'这里不单单要求指定的密码,还需要指定的帐号
'最好使用模块来做连接操作,这样在各个窗口间就都可以使用同一个连接来进行数据库操作了
'调用模块中的连接数据库函数
call connect()
'开始检查
'检查正确的用户名
'调用记录集连接并查询数据库得出结果
'如果在用户表中查无此用户则返回出错信息
if recordset(txtUserName.text,UserName)=false then
msgbox "您输入的用户名有误,请重新输入!","出错啦!= =|",vbcribitial+vbokonly '囧了,在这里有必要提示一下,msgbox的第二个参数实在是忘了怎么拼,用前四个字母去找找正确的就好,+号后边照搬
else
'检查正确的密码
If recordset(txtPassword.text,Password)=false Then
'将代码放在这里传递
'成功到 calling 函数
'设置全局变量时最容易的
LoginSucceeded = True
'结束后应调用关闭连接子程序关闭与数据库的连接
Call Disconnect()
Me.Hide '登录后应卸载登录窗体,同上最好改成Me.Unload
Else
MsgBox "无效的密码,请重试!", , "登录"
txtPassword.SetFocus
SendKeys "{Home}+{End}"
End If
end if
End Sub
然后就是写有关于连接数据库的东西啦~(我以Access2003数据库为例)
首先新建一个模块,然后把下列代码粘贴进去
Public sub connect()
dim conn as new adodb.connection
connstr="microsoft.jet.oledb.4.0;data source=" & app.path & "/lib.mdb"
conn.open connstr,"admin","",-1
end sub()
Public function recordset(object1 as string,object2 as string)
dim rs as new adodb.recordset
sqlstr="select * from user where" & object2 & "='" & object1 & "'"
rs.open sqlstr,conn,3,2,-1
if rs.EOF and rs.BOF then
……乱了= =详细还是企鹅聊吧,1002086705,备注写百度知道问题
展开全部
真不知你问什么
要是很多账号和密码就用数据库吧 别急 先学其他基础的东西 不要自虐哦!!!
要是很多账号和密码就用数据库吧 别急 先学其他基础的东西 不要自虐哦!!!
追问
嘿嘿,不好意思。我想表述两个问题,一,帮我把上边的代码补全,在密码和用户名位置。二,如果我想用多账号和密码的号,如何把表导入。如果有实例最好,可以参考一下。
追答
你是说 CHANGE事件加代码吗?我怎么知道你要实现什么功能,这些这样的代码你都还不懂先看看书吧!
还有就是数据库 这个你现在学会也太不可能了,先学基础的 那些到时候自己会的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Private Sub Cmdlogin_Click()
Dim rs As New ADODB.Recordset '定义一个新的记录集
Dim sql As String '定义一个字符串,用来写SQL语句
If txtusername.Text = "" Or txtpassword.Text = "" Then
MsgBox "用户名或密码不能为空", , "提示"
Exit Sub
End If
sql = "select * from Users where u_username='" & txtusername.Text & "' and u_password='" & txtpassword.Text & "'"
If DataOpen = True Then
Set rs = execSql(sql)
If rs.EOF = True Then
MsgBox "您输入的账号或密码错误"
Else
strUserName = txtusername.Text
userId = rs(0).Value
strRole = rs(3).Value
If strRole = "管理员" Then '用srtRole的值来判断登录的角色是管理还是普通用户
MsgBox "欢迎管理员"
Else
MsgBox "欢迎" + strUserName
End If
frmMdiMain.Show '显示主窗体
Unload Me '卸载本窗体
End If
Else
MsgBox "连接数据库失败"
End If
End Sub
这是我写的一段连接数据库登录代码,希望对你有帮助
Dim rs As New ADODB.Recordset '定义一个新的记录集
Dim sql As String '定义一个字符串,用来写SQL语句
If txtusername.Text = "" Or txtpassword.Text = "" Then
MsgBox "用户名或密码不能为空", , "提示"
Exit Sub
End If
sql = "select * from Users where u_username='" & txtusername.Text & "' and u_password='" & txtpassword.Text & "'"
If DataOpen = True Then
Set rs = execSql(sql)
If rs.EOF = True Then
MsgBox "您输入的账号或密码错误"
Else
strUserName = txtusername.Text
userId = rs(0).Value
strRole = rs(3).Value
If strRole = "管理员" Then '用srtRole的值来判断登录的角色是管理还是普通用户
MsgBox "欢迎管理员"
Else
MsgBox "欢迎" + strUserName
End If
frmMdiMain.Show '显示主窗体
Unload Me '卸载本窗体
End If
Else
MsgBox "连接数据库失败"
End If
End Sub
这是我写的一段连接数据库登录代码,希望对你有帮助
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询