机房收费系统之添加删除用户
2017-12-19 17:23
393 查看
看起来很难,但是今天刚看到一本书,要告诉自己,自己可以。而且真正学起来,它并不难,要和自己进行对话。所以我很淡定的告诉我自己,so easy。迷之自信有时候也是个好事~~
一,首先流程图:
二,主页面的设计:
选择combo的内容时,将之对应的信息显示出来,但这里combo是不能手动输入的。
①使combo不可手动输入:keypress事件
Private Sub Combotype_KeyPress(KeyAscii As Integer)
KeyAscii = 0
End Sub
②当选择combo内容时。对应的信息显示。这里要查询数据库user表的level列,代码如下:
Private Sub Combotype_click()
Dim txtSQL As String
Dim MsgText As String
Dim mrc As ADODB.Recordset
txtSQL = "select * from user_info where level='" & Trim(Combotype.Text) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
With MSHFlexGrid1
.CellAlignment = 4
.Rows = 1
.TextMatrix(0, 0) = "用户名"
.TextMatrix(0, 1) = "姓名"
.TextMatrix(0, 2) = "开户人"
Do While Not mrc.EOF
.CellAlignment = 4
.Rows = .Rows + 1
.TextMatrix(.Rows - 1, 0) = Trim(mrc.Fields(0))
.TextMatrix(.Rows - 1, 1) = Trim(mrc.Fields(3))
.TextMatrix(.Rows - 1, 2) = Trim(mrc.Fields(4))
mrc.MoveNext
Loop
End With
三,添加用户
①首先,这个控件要调用一个窗体。
②新的窗体我们进行好设置。写代码。
③确定信息填写完整。判空
④这里已经知道有哪些用户名已经添加了,就不能再重复添加。要对用户进行存在判断。
⑤两次密码要相同
⑥信息完整后添加到数据库+提示添加成功
这里的代码就不展示了。和之前大同小异。
四:删除用户
这里有一些新的知识点。
①我们要选择要删除的行,怎么确定点击一个单元格就代表一行呢?
MSHFlexGrid1.SelectionMode = flexSelectionByRow '单击选整行
MSHFlexGrid1.HighLight = flexHighlightAlways '聚焦。区别于没有选的行
②选择要删除的行
If MSHFlexGrid1.RowSel - 1 = 0 Then
MsgBox "请选择要删除的用户", 48, "提示"
Exit Sub
End If
③这里,表头不能删,因为它不是数据内容。但是选中其他行,则显示删除成功,并更新数据库
With MSHFlexGrid1
If .RowSel = 0 Then '起始行
MsgBox "请选择要删除的用户", 48, "提示"
Exit Sub
Else
If .RowSel > 0 Then
txtSQL = "delete from user_info where userid='" & Trim(.TextMatrix(.Rows - 1, 0)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
.RemoveItem .RowSel
MsgBox "用户已删除", vbOKOnly, "恭喜"
End If
End If
End With
今天敲完添加删除用户窗体的最大感受就是,逻辑真的太重要了。只要逻辑通了,就能找到解决的办法。如果逻辑像之前一样混乱,那就真的走不下去了。虽然现在很多逻辑地方还是错的,或者是没想到。但是要一步步来啊~~
一,首先流程图:
二,主页面的设计:
选择combo的内容时,将之对应的信息显示出来,但这里combo是不能手动输入的。
①使combo不可手动输入:keypress事件
Private Sub Combotype_KeyPress(KeyAscii As Integer)
KeyAscii = 0
End Sub
②当选择combo内容时。对应的信息显示。这里要查询数据库user表的level列,代码如下:
Private Sub Combotype_click()
Dim txtSQL As String
Dim MsgText As String
Dim mrc As ADODB.Recordset
txtSQL = "select * from user_info where level='" & Trim(Combotype.Text) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
With MSHFlexGrid1
.CellAlignment = 4
.Rows = 1
.TextMatrix(0, 0) = "用户名"
.TextMatrix(0, 1) = "姓名"
.TextMatrix(0, 2) = "开户人"
Do While Not mrc.EOF
.CellAlignment = 4
.Rows = .Rows + 1
.TextMatrix(.Rows - 1, 0) = Trim(mrc.Fields(0))
.TextMatrix(.Rows - 1, 1) = Trim(mrc.Fields(3))
.TextMatrix(.Rows - 1, 2) = Trim(mrc.Fields(4))
mrc.MoveNext
Loop
End With
三,添加用户
①首先,这个控件要调用一个窗体。
②新的窗体我们进行好设置。写代码。
③确定信息填写完整。判空
④这里已经知道有哪些用户名已经添加了,就不能再重复添加。要对用户进行存在判断。
⑤两次密码要相同
⑥信息完整后添加到数据库+提示添加成功
这里的代码就不展示了。和之前大同小异。
四:删除用户
这里有一些新的知识点。
①我们要选择要删除的行,怎么确定点击一个单元格就代表一行呢?
MSHFlexGrid1.SelectionMode = flexSelectionByRow '单击选整行
MSHFlexGrid1.HighLight = flexHighlightAlways '聚焦。区别于没有选的行
②选择要删除的行
If MSHFlexGrid1.RowSel - 1 = 0 Then
MsgBox "请选择要删除的用户", 48, "提示"
Exit Sub
End If
③这里,表头不能删,因为它不是数据内容。但是选中其他行,则显示删除成功,并更新数据库
With MSHFlexGrid1
If .RowSel = 0 Then '起始行
MsgBox "请选择要删除的用户", 48, "提示"
Exit Sub
Else
If .RowSel > 0 Then
txtSQL = "delete from user_info where userid='" & Trim(.TextMatrix(.Rows - 1, 0)) & "'"
Set mrc = ExecuteSQL(txtSQL, MsgText)
.RemoveItem .RowSel
MsgBox "用户已删除", vbOKOnly, "恭喜"
End If
End If
End With
今天敲完添加删除用户窗体的最大感受就是,逻辑真的太重要了。只要逻辑通了,就能找到解决的办法。如果逻辑像之前一样混乱,那就真的走不下去了。虽然现在很多逻辑地方还是错的,或者是没想到。但是要一步步来啊~~
相关文章推荐
- 机房收费系统之添加和删除用户
- 添加和删除用户窗体--机房收费系统
- 机房收费系统【VB版】——添加和删除用户
- 机房收费系统——添加删除用户窗体
- 机房收费系统之添加删除用户
- 机房收费系统之五(添加和删除用户窗体)
- 机房收费系统之删除用户
- 机房收费系统:(四)添加用户
- (十一)机房收费系统用户手册
- 机房收费系统之添加数据
- 机房重构---添加删除用户(删除DataGridView选定行,更新数据库)
- 机房收费系统——用户手册
- 机房收费系统——用户权限和功能分析
- 机房收费系统——用户权限和功能分析
- 机房收费系统——用户类型
- HOWTO:如果检测用户是从系统的“添加/删除”中卸载软件
- centos系统添加/删除用户和用户组的例子
- VB机房收费系统05——一般用户模块逻辑问题总结
- 机房收费系统系列一:运行时错误‘-2147217843(80040e4d)’;用户‘sa’登陆失败
- 机房收费系统-添加密保功能