【问题标题】:VBA: Why must I set focus to control every time?VBA:为什么我每次都必须设置焦点来控制?
【发布时间】:2013-06-22 18:33:48
【问题描述】:

我正在使用 Access 2007 数据库创建个人图书馆库存系统。在代码中,每当我引用表单控件的 .Text 属性时,无论是更改值,还是只是检查 IF 语句中的值,都会收到 Run-time error '2185': You can't reference a property or method for a control unless the control has the focus 的提示。

这是为什么?

对于设置.Text,这不是什么大问题,但是当我在 IF 语句中检查值时,在检查多个条件时无法设置焦点。

【问题讨论】:

    标签: ms-access properties ms-access-2007 vba


    【解决方案1】:

    改用.Value - 这不需要先设置焦点。从文档中,例如TextBox control(强调我的):

    虽然控件具有焦点,但 Text 属性包含文本 当前在控件中的数据; Value 属性包含最后一个 为控件保存的数据。当你把焦点移到另一个 控件,控件的数据被更新,并且设置了 Value 属性 到这个新值。 Text 属性设置随后将不可用,直到 控件再次获得焦点。

    【讨论】:

    • 谢谢!自从我在 Access 工作以来已经有一段时间了。知道必须有一些我忽略的小东西。
    猜你喜欢
    • 2020-09-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-06
    • 2021-01-29
    • 1970-01-01
    • 1970-01-01
    • 2017-04-19
    相关资源
    最近更新 更多