Access中用Repaint方法显示即时信息


  本文为大家介绍一下Access中用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 步骤就会强制更新屏幕显示,就会让我们动态看到程序运行状况了 。