2013-02-26 76 views
1

我有一个MS Access前端应用程序,其中第一个要打开的窗体(一个闪屏 - 从Autoexec宏打开窗体)有一个on_Load事件将定时器时间间隔设置为0,并将当前事件设置为100. timer事件启动应用程序运行(附加到后端SQL Server数据库等)。MS Access On_Current事件在应用程序的第一次运行时未触发

当应用程序的新副本被复制到一个新的地方时 - 我们在有新版本的时候这样做 - 它被复制到每个用户机器,应用程序的第一个调用通过定时器起作用,决不会触发。换句话说,目前的事件似乎从不发生。

我找不到是什么原因造成的,我能想到的唯一解释是,在发布之前测试启动时,我已经设置了表单,以便它的当前记录是当表单中设置的表单加载启动。

这是真的吗?是否有任何人知道on_current事件不会因此而触发的情况,或任何其他原因。

我等待on_current事件的原因是表单本身有一个数据源,它依赖于表单过滤器设置不同数据库连接的参数(例如生产v测试)。解决方法可能是在有载事件中设置定时器间隔 - 但它可能会导致可能的竞争情况,在定时器发生on_current设置正确的数据库之前触发该定时器,并且我宁愿避免该风险

+0

我认为'On Current'事件可能只会在窗体焦点被设置时触发,你是否试图通过编程方式移动焦点,因为这可能触发它? – 2013-02-26 13:05:25

回答

0

On Current当您移动到新纪录时发生火灾。要迫使它开火,你可以尝试移动到最后一个记录,然后回到第一个。

相关问题