在表单上的标签或文本框中显示字段的说明



我想做的是在表单上的标签中显示当前所选字段的描述。我觉得它当前显示的位置(左下角的状态栏)几乎不明显。

如何在状态栏中访问该值?例如,在我的表单上,当我选择了"说出,员工姓名"字段时,在左下角的小字体中,它会显示"您正在注册的员工的姓名"。

我知道在我的表单上的某个事件中,我需要代码

me.lblControlDescription.Caption = me.statusbar.caption

如何在 VBA 中访问状态栏中的文本(字段描述)?

状态栏中的文本是当前字段的Description属性。

从 VBA 中,您可以访问表单记录集中字段的Description

Debug.Print Me.Recordset.fields("id").Properties("Description")

因此,如果您有一个名为lblDescription的标签控件,则可以将其.Caption值设置为字段的Description

Me.lblDescription.Caption = Me.Recordset.fields("id").Properties("Description")

但是,这可能更复杂。Description是用户创建的属性,这意味着在您为其指定值之前,它不存在。 而且,如果您有一个集合,但稍后删除其值,则该属性本身将不再存在。

如果尝试在不存在Description时检索该,VBA 将引发错误 #3270"找不到属性"。 您可以捕获该错误,并将Me.lblDescription.Caption设置为在发生错误时vbNullString

您还需要一个策略来说明何时更改Me.lblDescription.Caption。 您可以创建一个过程来基于当前活动控件进行设置。 然后从窗体的每个控件的 on focus 事件调用该过程。 可能有更好的方法,但我刚才没有看到。

最新更新