我有一个MS Access前端应用程序,其中第一个要打开的窗体(一个闪屏 - 从Autoexec宏打开窗体)有一个on_Load事件将定时器时间间隔设置为0,并将当前事件设置为100. timer事件启动应用程序运行(附加到后端SQL Server数据库等)。MS Access On_Current事件在应用程序的第一次运行时未触发
当应用程序的新副本被复制到一个新的地方时 - 我们在有新版本的时候这样做 - 它被复制到每个用户机器,应用程序的第一个调用通过定时器起作用,决不会触发。换句话说,目前的事件似乎从不发生。
我找不到是什么原因造成的,我能想到的唯一解释是,在发布之前测试启动时,我已经设置了表单,以便它的当前记录是当表单中设置的表单加载启动。
这是真的吗?是否有任何人知道on_current事件不会因此而触发的情况,或任何其他原因。
我等待on_current事件的原因是表单本身有一个数据源,它依赖于表单过滤器设置不同数据库连接的参数(例如生产v测试)。解决方法可能是在有载事件中设置定时器间隔 - 但它可能会导致可能的竞争情况,在定时器发生on_current设置正确的数据库之前触发该定时器,并且我宁愿避免该风险
我认为'On Current'事件可能只会在窗体焦点被设置时触发,你是否试图通过编程方式移动焦点,因为这可能触发它? – 2013-02-26 13:05:25