Access的Open打开事件与Load加载事件解释-name
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


Access的Open打开事件与Load加载事件解释

发表时间:2018/6/24 9:19:06 评论(0) 浏览(11919)  评论 | 加入收藏 | 复制
   
摘 要:Access的Open打开事件与Load加载事件
          官方的解释
正 文:

1.在打开窗体,但第一条记录尚未显示时,发生此事件的Open事件。


   参数Cancel的设置  该设置确定是否打开窗体或报表。将 Cancel 参数设置为 True (–1) 可以取消窗体或报表打开。
   通过窗体的Open事件发生时运行宏或事件过程,您可以关闭另一个窗口或将焦点移到窗体上的特定控件。您还可以运行一个宏或在窗体之前需要要求提供信息的事件过程或打开或打印报表。
例如,打开的宏或事件过程可以打开自定义对话框中的用户输入的条件来筛选窗体或报表中包含的日期范围上显示的记录集。
当激活已打开的窗体时, Open事件不会发生 — 例如,您从 Microsoft Access 中的另一个窗口切换到窗体或在宏中使用 OpenForm 操作将打开的窗体置于顶部。但是,在这些情况下会激活事件。
当打开一个基于基础查询的窗体时,Microsoft Access 先运行该窗体的基础查询,然后才运行 Open 宏或事件过程。
如果您的应用程序可以有多个窗体一次加载,使用,而不是 Open 事件Activate和Deactivate事件来显示和隐藏自定义工具栏时将焦点移到不同的窗体。
Open 事件发生在Load事件之前,在打开窗体并显示其记录时触发。
首次打开窗体时,下列事件将按如下顺序发生:
打开→负载→ 调整 →激活→当前
Close 事件发生在Unload事件之后,后者在窗体被关闭但尚未从屏幕上删除之前被触发。
当关闭窗体时,下列事件将按如下顺序发生:
卸载→停用→关闭
当 Close 事件发生时,可以打开另一个窗口或要求输入用户名来产生日志项,以表明使用该窗体或报表的用户。
如果您正在尝试决定是否要打开或加载事件用于您的宏或事件过程,一个显著差别可取消的Open事件,但不能Load事件。例如,如果您正在动态构建窗体的Open事件的事件过程中的窗体的记录源,您可以取消打开窗体,如果要显示的记录。同样,可取消Unload事件,但Close事件不能。

下面的示例用于显示在用户单击"否"按钮时,如何取消窗体的打开操作。消息框提示用户输入订单的详细信息。如果用户单击"否",则"订单明细"窗体将不打开。
要试用该示例,请将以下事件过程添加到窗体中。

Private Sub Form_Open(Cancel As Integer)  Dim intReturn As Integer  intReturn = MsgBox("Enter order details now?", vbYesNo)  Select Case intReturn  Case vbYes  ' Open order Details form.  DoCmd.OpenForm "Order Details"  Case vbNo  MsgBox "Remember to enter order details by 5 P.M."  Cancel = True ' Cancel Open event.  End Select End Sub

 

2.Load事件 :在打开窗体并显示其记录时发生。


  若要这些事件发生时运行宏或事件过程,请将OnLoad属性设置为宏的名称或 [事件过程]。
诸如以下的用户操作将引起Load事件:
启动应用程序。
通过在"数据库"窗口中单击"打开"来打开窗体。
在宏中运行 OpenForm 操作。

通过在窗体的Load事件发生时运行宏或事件过程,可以指定控件的默认设置,或显示计算取决于该窗体的记录中的数据的数据。
通过窗体Unload事件发生时运行宏或事件过程,您可以验证应卸载窗体,或指定窗体卸载时应该发生的操作。您还可以打开另一个窗体或显示一个对话框要求输入用户名来产生日志项,以表明使用该窗体。
首次打开窗体时,下列事件将按如下顺序发生:
Open → Load → Resize → Activate → Current
如果您正在尝试决定是否要打开或加载事件用于您的宏或事件过程,一个显著差别可取消的Open事件,但不能Load事件。例如,如果您正在动态构建窗体的Open事件的事件过程中的窗体的记录源,您可以取消打开窗体,如果要显示的记录。
当关闭窗体时,下列事件将按如下顺序发生:
Unload → Deactivate → Close
Unload事件发生的Close事件之前。可取消Unload事件,但Close事件不能。
 注释
创建宏或事件过程的Load事件,如激活和GotFocus,与相关的事件时请确保它们不会发生冲突 (例如,请确保不会导致发生一个宏或取消在另一种过程) 和它们不会导致级联事件。


下面的示例可以在加载窗体时在窗体的标题中显示当前日期。
若要尝试运行该示例,请将以下事件过程添加到窗体中:
Private Sub Form_Load()  Me.Caption = Date End Sub 

 


Access软件网交流QQ群(群号:198465573)
 
 相关文章
Private Sub Form_Load()是什么意思?  【zsp88  2009/9/16】
access编译错误:发现二义性的名称:Form_Load的解决方...  【麥田  2012/7/23】
【Access示例】窗体间参数传递--OpenArgs  【杨雪  2016/7/5】
【Access开发平台自定义函数】LoadRecord  【红尘如烟  2017/10/26】
常见问答
技术分类
相关资源
文章搜索
关于作者

name

文章分类

文章存档

友情链接