在做机房收费系统的时候很多窗体都用到了MSHFlexGrid控件,所用到的一些功能也是很相似,就拿添加删除用户这个窗体来举例,敲完机房收费系统后发现这个窗体中该控件所实现的功能相对较多,就一一来总结一下吧!
背景:用到这个控件一般会涉及到选中删除等用法,要让改行明显区别于其它未选中行就需要用到高亮显示。
方法:
<span style="font-size:18px;"><strong>Private Sub MyFlexGrid_Click() '选中行高亮显示 MyFlexGrid.BackColorSel = vbBlue End Sub</strong></span>
方法:
Private Sub cmdDelete_Click() Dim j As Integer '记录选中行的行号 j = MyFlexGrid.Row If j < 1 Then '选中行为标题行 MsgBox "请选择合理的信息!", vbOKOnly + vbExclamation, "警告" Exit Sub End If End Sub
Private Sub cmdDelete_Click() Dim txtsql As String Dim msgtext As String Dim mrc As ADODB.Recordset If MyFlexGrid.TextMatrix(MyFlexGrid.RowSel, 0) = Trim(username) Then MsgBox "正在使用,不能删除!", vbOKOnly + vbExclamation, "警告" Exit Sub End If<span style="font-family: Arial, Helvetica, sans-serif;"> </span>
'删除选中的信息 txtsql = "delete user_info where userid= '" & MyFlexGrid.TextMatrix(MyFlexGrid.Row _
S<span style="font-family: Arial, Helvetica, sans-serif;">el, 0) & "'"</span>
Call Executesql(txtsql, msgtext) '刷新数据库中信息 MyFlexGrid.RemoveItem MyFlexGrid.RowSel '删除该控件中选中的行信息 End Sub
在本窗体中,当点击用户级别后的复选框时,信息会显示在控件中,所以刷新控件中信息时只需调用该复选框事件即可。
Private Sub cmdUpdate_Click() '实现更新功能的按钮单击事件 Dim msgtext As String Dim txtsql As String Dim mrc As ADODB.Recordset '更新控件中显示的信息 txtsql = "select * from user_info" Call Executesql(txtsql, msgtext) '刷新myflexgrid控件 Call comLevel_Click End Sub
学习是想通的,学习的过程中不断的积累经验,建立自己的知识网才是硬道理。做机房的时候应该先宏观把控一下,看一下每个窗体要实现什么功能,他们用到了哪些控件,然后进行归类,整理好自己的思路,代码就不是那么神秘了吧!