回 帖 发 新 帖 刷新版面

主题:追求窗体显示速度问题

众所周知,
Form窗体(表单)显示的时候,
从小到大,从 .Load - .Init 的过程中执行

会先按照默认或预定义的属性来显示各个窗体控件,
再执行 .init 事件

我现在在窗体的 .init 里有很多 setall( ) 语句,
不可避免的,就会重复执行控件的动作,
重复执行,等于减慢速度,降低效率,
对于新机器当然没什么问题,但旧机器.......等三秒,
足以让一些没耐性的人发急.

问题:
我非得把setall( )分拆开去逐个设置控件的属性?

回复列表 (共14个回复)

11 楼

类的使用方法:

define class 自定义类名 as 系统原有类名  && 例如表单 form
   height=19   &&重新定义默认属性
   width=27

   protected 新属性名  &&创建新属性
   
   proc 方法名  &&定义方法
     .....
   endproc
enddefine

新实例=createobject("新类名")

12 楼

如果有大量的重复代码,可以把这个控件做成自定义可视类,添加一些代码就可在引用这个控件的容器内使用,不节省时间,但节省程序。

13 楼

“不节省时间”

是否可以这样理解。
如果在.init事件中进行设置,VFP必然是先以属性值进行刻画,刻画完成后,再在.init进行调整。系统对代码的编译和运行必然有重复浪费。

如果在每个控件的属性值进行设置,其设置工作量虽大,但一劳永逸。(如果只是一次性修改的话)

14 楼

07年的貼子啊!

  都是高手,動作太快,看得都是雲里霧里.

  我頂一下,只希望有耐心的人,一一地講解一下.setall( )方法

我来回复

您尚未登录,请登录后再回复。点此登录或注册