一直的疑惑:同一功能的实现往往要在多个事件中实现,这样可读性和可维护性极差。如何才能将这些各事件中的代码整和在一起。如要实现在保存数据之前对输入数据的完整性进行检查,既有只在QueryBeforePost中进行判断是不够的,有的东西还要在一个专门的函数中判断,这样一个功能往往在几个地方实现,这还不如c中直接写一个函数来得方便,我总觉得有了事件后,很多功能实现起来还更麻烦了,是不是我还是面向过程的思想在做怪。请大家跟我指点指点,定当感激不尽。

解决方案 »

  1.   

    是可以写函数,如数据检查,有的情况必须在QueryBeforePost才能实现,但有的又得自己写函数实现,同是数据检查,就分为几个地方实现,这样很难维护。我想既然是数据检查,可不可仪在一个函数中实现,这样也好维护啊。请赐教
      

  2.   

    你可以创建一个Unit,把你的重要函数写进去,然后引用这个Unit,区调用里面的函数
      

  3.   

    简单介绍一下我的经验,希望对你有用我以前在写一个MIS的时候,有十几个字段不同的表格页面,功能大都差不多,无非是些添加修改,删除,打印,预览等等,我采用的是新建一个unit,然后写一个函数,传递参数主要有dbgridname,adotablename,datasourcename,各种标签名,各种edit名等等,然后在这个函数里统一写各种功能,如果有的页面参数没这么多,就设定为缺省值,这样代码量压缩到了原来的10分之一左右,而且可读性也很好。你可以参考
      

  4.   

    你可定義一個action list ,定義一個公用事件處理過程,然後將你的事件設為你已定義的公用事件過程!