您的位置:首页 > 其它

机房收费系统之MSHFlexGrid控件

2017-10-15 18:47 176 查看
MSHFlexGrid控件实践

前言:

     起初敲学生的时候,我记得使用的是MSFlexGrid(背景黑色)的窗体,然后敲机房的时候直接就奔着这个窗体过去了,后来敲“操作员”的时候又遇到了他的哥们---MSHFlexGrid,扎眼一看它俩除了外表外似乎真的没有什么区别;但是经过查阅资料发现不一样的地方竟然在实质上。随笔附赠一幅图☟



来源:

     因为后来需要再Excel中导出控件中的数据,所以需要统一两个控件(简单、高效),统一使用的后者;

附加:其中是我再查阅资料的时候又遇到的之前学过的知识,真的是知识重复化学习,增强记忆,经过这一遍后自己又梳理一便思路,为大家附赠一幅导图;



过程:

     下面就和大家聊聊机房收费系统用到的这个控件的地方和作用;首先我们使用这个控件的目的是显示记录集中的内容,所以会涉及到重复度比较高的代码;然后控件中显示内容后还需要导出到Excel表,这里是一个新的知识点,感觉以前没有学过的,也许是自己忘了,反正怎样都好,以前没有趟过的路都要重新走一遍的;以下是代码执行过程(全局模块中)

Public Function exportflexdatatoexcel(MSHFlexGridName As MSHFlexGrid)
Dim tmpExcel As Excel.Application
Dim tmpBook As Excel.Workbook
Dim tmpSheet As Excel.Worksheet
Dim i, J As Integer
Screen.MousePointer = vbHourglass
On Error GoTo err_Export
If MSHFlexGridName.Rows > 1 Then
Set tmpExcel = New Excel.Application
tmpExcel.Application.Visible = True
tmpExcel.Workbooks.Add (1)
Set tmpSheet = tmpExcel.ActiveWorkbook.ActiveSheet
For i = 0 To MSHFlexGridName.Rows - 1
For J = 0 To MSHFlexGridName.Cols - 1
tmpSheet.Cells(i + 1, J + 1) = MSHFlexGridName.TextMatrix(i, J)
Next J
Next i
Screen.MousePointer = vbDefault
Else
MsgBox "不存在任何数据", , "提示"
Screen.MousePointer = vbDefault
Exit Function
err_Export:
Screen.MousePointer = vbDefault
MsgBox "请确认您的电脑已经安装了office中的Excel!", , "提示"
End If
End Function


当然我感觉比较重要的还是代码的理解方面和过程;其中还涉及到变量传值、过程和函数的区别等。
--------------------------------------------

                     
 最终就是在每个需要导出的表中引用模块中的定义的过程;(应用到以前的知识-函数调用
                           格式一:变量名=函数过程名-----调用后使用函数的返回值
                           格式二:call函数过程名(实参)----调用后放弃函数的返回值
                           格式三;函数过程名 实参---见格式二(exportflexdatatoexcelMSHFlexGrid1)
-----------------------------------------------------------------

体会:

      当然在整体做完后又启发出新的优化过程,比如应用click、keydown事件,当更换卡号的时候,自动清空控件中的内容;当然在这里面又设计到原来的一个知识点,keypress和keydown,各位可以在代码框中观看两者的区别,随机附赠一幅图;这里面调试区别的时候还用到一个过程,发现竟然还有这种方式;新鲜.....



也许你不理解网上所说的他们之间的区别,因为我也不是很懂,但是靠代码执行你就会明白一些;
--------------------------------------------------------------
      现在终于体会到了培养计划安排的合理之处,上一级项目都是为下一级项目打下基础,知识点会不经意间出现在你的身边,只要你够仔细;所以重复度如此高的过程,难道你还发愁掌握不了嘛!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息