全部显示

Change 事件

       

文本框组合框的文本部分的内容更改时,Change 事件发生。在选项卡控件中从一页移到另一页时,该事件也会发生。

说明

该事件的示例包括直接在文本框或组合框中输入一个字符,或者使用或 Visual Basic 更改该控件的 Text 属性设置。

注意

要在该事件发生时运行宏或事件过程,请将 OnChange 属性设置为宏的名称或 [事件过程]。

在 Change 事件发生时,通过运行宏或事件过程,可以调整控件中的数据显示。也可以在一个控件中显示数据或公式,而在另一个控件中显示结果。

当计算控件中的值更改,或从组合框列表选择一个项目时,Change 事件不会发生。

注意   Change 事件将导致级联事件的发生。这种情况发生在响应控件 Change 事件而运行的宏或事件过程需要更改控件内容时。例如,更改决定控件值的属性设置,如文本框的 Text 属性时。应尽量避免级联事件发生:

如果使用键盘更改文本框或组合框中的数据,除引起 Change 事件这类的控件事件发生之外,还将导致键盘事件的发生。例如,如果移到一个新记录并在记录的文本框中键入一个 ANSI 字符,则下列事件将按如下顺序发生:

KeyDown ==>KeyPress ==> BeforeInsert ==> Change ==> KeyUp

文本框或组合框控件的 BeforeUpdate AfterUpdate 事件,发生在输入新数据或在控件中更改了数据后,又移到另一个控件(或单击“记录”菜单上的“保存记录”)之后,因而也在控件的所有 Change 事件之后。

LimitToList 属性设为“是”的组合框中,当输入了列表值以外的值,并试图移到另一个控件或保存记录之后,将发生 NotInList 事件。它发生在组合框的所有 Change 事件之后。在这种情况下,组合框的 BeforeUpdate 和 AfterUpdate 事件不会发生,因为 Microsoft Access 不接受非列表值。