设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

切换面板动态时钟的副作用

1970-1-1 08:00| 发布者: 李寻欢『文章』| 查看: 1851| 评论: 0

我的一个仓库管理程序,做了一个主控窗体,并利用主控窗体的timer事件做了一个窗体时钟,一秒刷新一次,看起来效果还不错,但恶梦也开始降临,交给仓库使用后,操作员老是反应所有窗体的删除按钮都不起作用。

我调试时发现,到了这句就出错:“无法选择记录”
DoCmd.DoMenuItem acFormBar, acEditMenu, 8, , acMenuVer70
这句等同于选定记录。我却不明白为何不能选择记录,就换了另一条命令来删除记录:
docmd.RunCommand acCmdDeleteRecord

结果依然不行。

后来又发现只要开着主控窗体,就无法执行删除命令,我就把主控窗体中Load、Open里的语句都屏蔽掉,还是不行。

百思不得其解!

一次在主控窗体打开的状态下修改程序时,输入“.”号时,后面的对象列表显示了一下马上又消失了,因为窗体时钟在运行,每秒都会刷新一次主控窗体,刷新时就把焦点移到主控窗体上了,所以对象列表就消失了,这时我恍然大悟:罪魁祸首就是timer事件!

因为执行删除动作时,程序会先选定当前记录,再删除选定的记录,如果你的窗体有记录选定器就会看到记录选定器变黑了,如果这时刚好主控窗体刷新时间,就会把焦点移到主控窗体上去,刚才选定的记录又变成没选定或是无法选定,就无法执行删除操作了。

最后,我把主控窗体的时钟效果去掉,删除按钮又可以正常工作了。

另:如果窗体的编辑、删除属性为“否”,也会导致删除按钮不起作用。

最新评论

相关分类

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-29 14:49 , Processed in 0.073778 second(s), 16 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

返回顶部