在access中用Repaint方法显示即时信息
时 间:2012-05-18 09:28:55
作 者:蒋灿辉 ID:24104 城市:上海
摘 要:在程序运行过程当中,不会实时的更新屏幕显示,这样会加快程序运行的速度,所以在设计到大量计算时,程序就不会有任何显示更新,像死机了一样,但是加入了Repaint方法就会强制更新屏幕显示,就会让我们动态看到程序运行状况了。
正 文:
Access数据库的使用大概有两大部分,一是数据的计算与处理,像数据表、查询这些都是来完成数据处理工作的,他们会按照我们的需要完成数据的计算和处理,形成数据信息以供参考;二是用户界面(UI)的制作,这一部分虽然不是核心,但是也非常重要,。因为对于一般用户来讲,不会懂得怎样去建立查询等等这些工作,他们所需要的只是点点按钮就能得到必要的信息,所以,我们需要制作大量的窗体来引导用户进行数据库的操作,以得到他们所需的信息。所以对于一个好的数据库应用系统来讲,这两大部分缺一不可。
在建立窗体,引导用户使用的过程中,经常会遇到这样的问题:有时候用户按下某个命令按钮,当程序开始执行那个按钮所关联的程序时,由于涉及到大量的计算工作,所以电脑运行会变慢,在Access中会表现为屏幕没有任何反应,时间稍长,就会让人感觉是不是死机了?所以,在这种情况下,如果有提示框来告诉用户电脑此时在做什么会比较好,另外这样也可以感觉时间短些,因为没有任何变化的等待会让人感觉更加漫长!
要完成这个即时信息显示窗口,我们首先想到的就是在程序的某一部分加上一段代码,这段代码打开一个新的窗口,窗口中会有相关文字,如“程序正在运行,请稍等……”等等,代码也很简单,在Access中就是
……
DoCmd.OpenForm "wait"
Forms!Wait!lblwait.Caption = "程序正在运行,请稍等……"
……
其中,wait是窗体(Form)的名字,lblwait是窗体中的一个标签(Label)控件的名称,程序运行到省略号这里时,会打开wait窗口,然后把标签控件的名称改为“程序正在运行,请稍等……”。
可是当你真正运行这段程序代码时,会发现效果并不是你想象的那样,wait窗口确实出来了,但是上面只是一片白色区域,没有任何文字,最初你可能觉得是自己的电脑运行慢,显示不出来,但是即使你换到最快的电脑上来运行,结果还会是这样,岂不郁闷?!
这个时候,就轮到Repaint方法大显身手了,将上面的代码稍作修改,如下面这样:
……
DoCmd.OpenForm "wait"
Forms!Wait!lblwait.Caption = "程序正在运行,请稍等……"
Forms!Wait.Repaint
……
再运行一下,就可以看到窗口正常显示出来提示了。
之后,你可以在需要的地方都加上这段代码,把其中的文字换换,就可以在程序的运行过程当中实时提示用户程序在做什么了!
道理其实也很简单,就是在程序运行过程当中,不会实时的更新屏幕显示,这样会加快程序运行的速度,所以在设计到大量计算时,程序就不会有任何显示更新,像死机了一样,但是加入了Repaint方法就会强制更新屏幕显示,就会让我们动态看到程序运行状况了。
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 统计当月之前(不含当月)的记录...(03.11)
- 【Access Inputbo...(03.03)
- 按回车键后光标移动到下一条记录...(02.12)
- 【Access Dsum示例】...(02.07)
- Access对子窗体的数据进行...(02.05)
- 【Access高效办公】上月累...(01.09)
- 【Access高效办公】上月累...(01.06)
- 【Access Inputbo...(12.23)
- 【Access Dsum示例】...(12.16)

学习心得
最新文章
- 32位的Access软件转化为64...(04.12)
- 【Access高效办公】如何让vb...(04.11)
- 仓库管理实战课程(10)-入库功能...(04.08)
- Access快速开发平台--Fun...(04.07)
- 仓库管理实战课程(9)-开发往来单...(04.02)
- 仓库管理实战课程(8)-商品信息功...(04.01)
- 仓库管理实战课程(7)-链接表(03.31)
- 仓库管理实战课程(6)-创建查询(03.29)
- 仓库管理实战课程(5)-字段属性(03.27)
- 设备装配出入库管理系统;基于Acc...(03.24)