Private Sub Tb1_ButtonClick(ByVal Button As MSComctlLib.Button)
Static a As Integer
Dim rs As New ADODB.Recordset
Dim str As String
Select Case Button.Key
Case "添加"
Status (False)
Tb1.Buttons("删除").Enabled = False
a = 1
txtUserID.Text = ""
txtUserName.Text = ""
cboDepName.ListIndex = -1
txtPWD1.Text = ""
txtPWD2.Text = ""
cboGrade.ListIndex = -1
txtUserID.SetFocus
Case "修改"
Status (False)
Tb1.Buttons("删除").Enabled = False
txtUserID.Locked = True
txtUserName.SetFocus
a = 2
Case "删除"
If MsgBox("是否删除,删除操作是不可逆的", vbQuestion + vbYesNo, "练习") = vbYes Then
str = "select * from users where userid='" & txtUserID.Text & "'"
rs.Open str, Con, adOpenDynamic, adLockOptimistic
rs.Delete
rs.Close
Display
MSF_Click
Else
End If
Case "保存"
If txtPWD2.Text = txtPWD1.Text Then
Else
MsgBox "验证码与密码不符"
txtPWD1.Text = ""
txtPWD2.Text = ""
txtPWD1.SetFocus
Exit Sub
End If
Status (True)
Tb1.Buttons("删除").Enabled = True
If a = 1 Then
str = "select * from users"
rs.Open str, Con, adOpenDynamic, adLockOptimistic
rs.AddNew
rs.Fields("userid") = txtUserID.Text
rs.Fields("username") = txtUserName.Text
rs.Fields("depid") = cboDepName.Text
rs.Fields("pwd") = txtPWD1.Text
rs.Fields("usergrade") = cboGrade.Text
rs.Update
rs.Close
ElseIf a = 2 Then
str = "select * from users where userid='" & txtUserID.Text & "'"
rs.Open str, Con, adOpenDynamic, adLockOptimistic
rs.Fields("userid") = txtUserID.Text
rs.Fields("username") = txtUserName.Text
rs.Fields("depid") = cboDepName.Text
rs.Fields("pwd") = txtPWD1.Text
rs.Fields("usergrade") = cboGrade.Text
rs.Update
rs.Close
End If
Display
Case "取消"
Status (True)
Tb1.Buttons("删除").Enabled = True
MSF_Click
Case "退出"
Unload Me
End Select
End Sub这是工具条上的六个按钮
我想放在六个普通按钮上面!可是自己拆开之后保存和删除就不好使了。。
请哪位大虾给拆一下!!!谢谢!!!
其它函数:
Option Explicit
Private Sub Status(sta As Boolean)
txtUserID.Locked = sta '锁定txtUserID 为布尔型变量sta=true
txtUserName.Locked = sta
cboDepName.Locked = sta
txtPWD1.Locked = sta
txtPWD2.Locked = sta
cboGrade.Locked = sta
MSF.Enabled = sta '表格Enabled=true
Tb1.Buttons("添加").Enabled = sta
Tb1.Buttons("修改").Enabled = sta
Tb1.Buttons("删除").Enabled = True
Tb1.Buttons("保存").Enabled = Not sta ' "保存"的sta Enabled 为False
Tb1.Buttons("取消").Enabled = Not sta
Tb1.Buttons("退出").Enabled = True
End SubPrivate Sub Display()
Dim rs As New ADODB.Recordset '给记录集分配空间
Dim str As String
Dim i As Integer
MSF.Rows = 1 '表格为1行
MSF.Cols = 6 '表格为6列
MSF.TextMatrix(0, 0) = "编号" '列名称为编号
MSF.TextMatrix(0, 1) = "用户编号"
MSF.TextMatrix(0, 2) = "用户名称"
MSF.TextMatrix(0, 3) = "部门名称"
MSF.TextMatrix(0, 4) = "密码"
MSF.TextMatrix(0, 5) = "级别"
str = "select * from users" '查看users表中的内容
rs.Open str, Con '打开连接
Do While Not rs.EOF '如果不在结尾则循环
MSF.AddItem "" '添加一条空记录
MSF.TextMatrix(i + 1, 0) = i + 1 '列编号+1
MSF.TextMatrix(i + 1, 1) = rs.Fields("userId")
MSF.TextMatrix(i + 1, 2) = rs.Fields("userName")
MSF.TextMatrix(i + 1, 3) = rs.Fields("depId")
MSF.TextMatrix(i + 1, 4) = rs.Fields("PWD")
MSF.TextMatrix(i + 1, 5) = rs.Fields("userGrade")
rs.MoveNext '指向下一条记录
i = i + 1
Loop
rs.Close
End SubPrivate Sub Form_Load()
Dim rs As New ADODB.Recordset '给记录集分配空间
Dim str As String
'部门组合框添加内容
str = "select * from dep"
rs.Open str, Con '打开记录集连接
Do While Not rs.EOF '没有指向记录集结尾则...执行
cboDepName.AddItem rs.Fields("depid") '在部门名称中添加DepID列
rs.MoveNext '指向下一条记录
Loop
' cboDepName.ListIndex = 0 '默认指向第一条记录
rs.Close '关闭记录集连接
cboGrade.AddItem "普通" '在cboGrade中添加级别为普通
cboGrade.AddItem "管理" '在cboGrade中添加级别为管理
Status (True) '调用Status函数.为Ture
Display '调用Display函数,重新读取数据库操作
MSF_Click '调用MSF_Click事件,更新表格数据
End SubPrivate Sub MSF_Click()
txtUserID.Text = MSF.TextMatrix(MSF.Row, 1) 'txtUserID的text等于表格中的MSF.Row
txtUserName.Text = MSF.TextMatrix(MSF.Row, 2)
cboDepName.Text = MSF.TextMatrix(MSF.Row, 3)
txtPWD1.Text = MSF.TextMatrix(MSF.Row, 4)
txtPWD2.Text = MSF.TextMatrix(MSF.Row, 4)
cboGrade.Text = MSF.TextMatrix(MSF.Row, 5)
End Sub模块:
Option Explicit
Public Con As New ADODB.ConnectionSub main()
Dim str As String
str = "provider=sqloledb.1;data source=.;initial catalog=lianxi;user id=sa;password=sa"
Con.Open str
frmLogin.Show
End Sub
Static a As Integer
Dim rs As New ADODB.Recordset
Dim str As String
Select Case Button.Key
Case "添加"
Status (False)
Tb1.Buttons("删除").Enabled = False
a = 1
txtUserID.Text = ""
txtUserName.Text = ""
cboDepName.ListIndex = -1
txtPWD1.Text = ""
txtPWD2.Text = ""
cboGrade.ListIndex = -1
txtUserID.SetFocus
Case "修改"
Status (False)
Tb1.Buttons("删除").Enabled = False
txtUserID.Locked = True
txtUserName.SetFocus
a = 2
Case "删除"
If MsgBox("是否删除,删除操作是不可逆的", vbQuestion + vbYesNo, "练习") = vbYes Then
str = "select * from users where userid='" & txtUserID.Text & "'"
rs.Open str, Con, adOpenDynamic, adLockOptimistic
rs.Delete
rs.Close
Display
MSF_Click
Else
End If
Case "保存"
If txtPWD2.Text = txtPWD1.Text Then
Else
MsgBox "验证码与密码不符"
txtPWD1.Text = ""
txtPWD2.Text = ""
txtPWD1.SetFocus
Exit Sub
End If
Status (True)
Tb1.Buttons("删除").Enabled = True
If a = 1 Then
str = "select * from users"
rs.Open str, Con, adOpenDynamic, adLockOptimistic
rs.AddNew
rs.Fields("userid") = txtUserID.Text
rs.Fields("username") = txtUserName.Text
rs.Fields("depid") = cboDepName.Text
rs.Fields("pwd") = txtPWD1.Text
rs.Fields("usergrade") = cboGrade.Text
rs.Update
rs.Close
ElseIf a = 2 Then
str = "select * from users where userid='" & txtUserID.Text & "'"
rs.Open str, Con, adOpenDynamic, adLockOptimistic
rs.Fields("userid") = txtUserID.Text
rs.Fields("username") = txtUserName.Text
rs.Fields("depid") = cboDepName.Text
rs.Fields("pwd") = txtPWD1.Text
rs.Fields("usergrade") = cboGrade.Text
rs.Update
rs.Close
End If
Display
Case "取消"
Status (True)
Tb1.Buttons("删除").Enabled = True
MSF_Click
Case "退出"
Unload Me
End Select
End Sub这是工具条上的六个按钮
我想放在六个普通按钮上面!可是自己拆开之后保存和删除就不好使了。。
请哪位大虾给拆一下!!!谢谢!!!
其它函数:
Option Explicit
Private Sub Status(sta As Boolean)
txtUserID.Locked = sta '锁定txtUserID 为布尔型变量sta=true
txtUserName.Locked = sta
cboDepName.Locked = sta
txtPWD1.Locked = sta
txtPWD2.Locked = sta
cboGrade.Locked = sta
MSF.Enabled = sta '表格Enabled=true
Tb1.Buttons("添加").Enabled = sta
Tb1.Buttons("修改").Enabled = sta
Tb1.Buttons("删除").Enabled = True
Tb1.Buttons("保存").Enabled = Not sta ' "保存"的sta Enabled 为False
Tb1.Buttons("取消").Enabled = Not sta
Tb1.Buttons("退出").Enabled = True
End SubPrivate Sub Display()
Dim rs As New ADODB.Recordset '给记录集分配空间
Dim str As String
Dim i As Integer
MSF.Rows = 1 '表格为1行
MSF.Cols = 6 '表格为6列
MSF.TextMatrix(0, 0) = "编号" '列名称为编号
MSF.TextMatrix(0, 1) = "用户编号"
MSF.TextMatrix(0, 2) = "用户名称"
MSF.TextMatrix(0, 3) = "部门名称"
MSF.TextMatrix(0, 4) = "密码"
MSF.TextMatrix(0, 5) = "级别"
str = "select * from users" '查看users表中的内容
rs.Open str, Con '打开连接
Do While Not rs.EOF '如果不在结尾则循环
MSF.AddItem "" '添加一条空记录
MSF.TextMatrix(i + 1, 0) = i + 1 '列编号+1
MSF.TextMatrix(i + 1, 1) = rs.Fields("userId")
MSF.TextMatrix(i + 1, 2) = rs.Fields("userName")
MSF.TextMatrix(i + 1, 3) = rs.Fields("depId")
MSF.TextMatrix(i + 1, 4) = rs.Fields("PWD")
MSF.TextMatrix(i + 1, 5) = rs.Fields("userGrade")
rs.MoveNext '指向下一条记录
i = i + 1
Loop
rs.Close
End SubPrivate Sub Form_Load()
Dim rs As New ADODB.Recordset '给记录集分配空间
Dim str As String
'部门组合框添加内容
str = "select * from dep"
rs.Open str, Con '打开记录集连接
Do While Not rs.EOF '没有指向记录集结尾则...执行
cboDepName.AddItem rs.Fields("depid") '在部门名称中添加DepID列
rs.MoveNext '指向下一条记录
Loop
' cboDepName.ListIndex = 0 '默认指向第一条记录
rs.Close '关闭记录集连接
cboGrade.AddItem "普通" '在cboGrade中添加级别为普通
cboGrade.AddItem "管理" '在cboGrade中添加级别为管理
Status (True) '调用Status函数.为Ture
Display '调用Display函数,重新读取数据库操作
MSF_Click '调用MSF_Click事件,更新表格数据
End SubPrivate Sub MSF_Click()
txtUserID.Text = MSF.TextMatrix(MSF.Row, 1) 'txtUserID的text等于表格中的MSF.Row
txtUserName.Text = MSF.TextMatrix(MSF.Row, 2)
cboDepName.Text = MSF.TextMatrix(MSF.Row, 3)
txtPWD1.Text = MSF.TextMatrix(MSF.Row, 4)
txtPWD2.Text = MSF.TextMatrix(MSF.Row, 4)
cboGrade.Text = MSF.TextMatrix(MSF.Row, 5)
End Sub模块:
Option Explicit
Public Con As New ADODB.ConnectionSub main()
Dim str As String
str = "provider=sqloledb.1;data source=.;initial catalog=lianxi;user id=sa;password=sa"
Con.Open str
frmLogin.Show
End Sub
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货