机房之完结

来源:互联网 发布:筛子目的算法 编辑:程序博客网 时间:2024/05/21 07:56

经过快两个月的设计和努力,我的机房收费系统终于完结了,期间也是磕磕绊绊的,遇到了很多的困难,这次打算说一说我在这个过程中遇到的问题,给大家提个醒,遇到此类的困难可以避免。

第一个困难:对窗体的功能不熟悉,在自己编写时总是缺少一部分功能,所以在开始之前自己做好自己的计划,将窗体的功能和链接的表的关系搞清楚,最好画图,按照自己的图写程序,最后哪怕是缺少了功能,通过自己的图也能很好的补全。我来写两个示例,分别是上下机和结账的功能。



第二个困难:有很多不熟悉的代码和功能,即使我现在完成了自己的机房,我也不敢说什么都会了,一个功能可能有多个方法,我只是会了一种。

1.字符的限制,这个就不多说了,以前的博客写过,限制的方法很多。

2.导出Excel,这个其实我一点也不会,代码我是从网上自己找的,其实这也是理解的过程。

3.组合查询,在查询的基础上增加查询的难度,对条件的增加增加了逻辑的思考难度。

4.对选中的一行进行操作,我的困难的不知道怎么去写选中的一行,没法去写,自己也没有见过,是一个新的东西,所以还是需要我们去查,去多看csdn上的一下博客。


第三个困难:代码复杂,经常不知道自己写的是什么,就是自己写代码写乱了,这涉及到逻辑的问题,比如上下机,在下机的时候结算花费,经常把用到的数据搞混。

这里我想说的是在下机是钱的结算,我经常写着写着,就不知道自己写到哪里了,那个算式写到哪里的,所以建议大家,我们在写这种关于数据,且很多的时候,我们要自己先做好算法的数学表达,同时对代码要尽可能的多些注释。


第四个困难:变量定义要规范,我的一个控件的名称都是随便写的,没有什么规范,但是后期代码的修改却有很大的麻烦。再给大家举个栗子生气

在机房中使用了很多MSFlexGrid1控件,我在对这个控件命名时没有注意,都是随便起的名字,或者是没有改,但是大家都知到,这个表格的控件有时候字很多,显示不出来,所以我就在模块中写了一个函数,这个函数的功能是对表格的每个格进行宽度的设计,代码如下,但是调用的时候因为表格控件名称不一致出了问题,给大家看看,引以为戒。

Public Sub AdjustColWidth(frmCur As Form, gridCur As Object, Optional bNullRow As Boolean = True, Optional dblIncWidth As Double = 0)'--------------------------------------------------------------------'功能:'       自动调整Grid各列列宽为最合适的宽度'参数:'       [frmCur].........................................当前工作窗体'       [gridCur]........................................当前要调整的Grid'--------------------------------------------------------------------Dim i, j As IntegerDim dblWidth As Double    With gridCur        For i = 0 To .Cols - 1            dblWidth = 0            If .ColWidth(i) <> 0 Then                For j = 0 To .Rows - 1                    If frmCur.TextWidth(.TextMatrix(j, i)) > dblWidth Then                        dblWidth = frmCur.TextWidth(.TextMatrix(j, i))                    End If                Next                .ColWidth(i) = dblWidth + dblIncWidth + 800            End If        Next    End WithEnd Sub
调用的时候的代码如下:
Call AdjustColWidth(shouqujinechaxun, myFlexgrid)
括号里边的第一个是窗体名称,第二个是控件名称,我的命名是不规范的,大家可以看一下VB命名规范。问题是在括号的第二个,我的每个窗体的名称都不一样,每次写这个代码都要修改,如果命名一样,那么就不用改了。也许大家觉得这个是简单的,改改也没有什么,但是如果是大型的软件开发,命名不规范是个很大的问题,还有各种规范。所以想要成为一个好的程序员精英,我们就要从心在做好规范。

原创粉丝点击