VBA 显示代码
显示代码是与图形画面关联的 Visual Basic 代码。显示代码用 Visual Basic for Applications 创建,作为画面的一部分进行保存。当画面或画面的对象引发事件时,显示代码才会运行。仅当在图形编辑器中测试画面或在 FactoryTalk View SE Client 中运行画面时,才会引发事件。为响应事件而运行的代码称为事件处理程序。
默认情况下,向图形画面添加对象时,由于对象的
ExposeToVBA
属性被设置为不显示
,因此该对象不会作为画面的属性显示,也不会出现在 VBA 代码窗口的下拉列表中。此属性用于提高加载、编辑和保存包含大量对象的画面的性能。作为 VBA 控件显示的对象越多,载入画面所需时间就越长。当对象在 VBA 中显示时,很容易读取和写入其属性。可通过在画面(
ThisDisplay
类模块)的代码窗口中键入对象名来访问对象。VBA 还会显示表示画面的名为 Me
的对象。在 ThisDisplay
类的代码窗口中键入 Me.
时,将显示此画面的所有属性和所显示对象的名称。要为
Application
对象的事件编写代码,需要使用 WithEvents
关键字指定应用程序对象的尺寸,并在显示事件(即 Display_AnimationStart
)中进行设置。以下对象能引发事件:
- Application
- Display
- Group
- Button
- NumericDisplay
- NumericInput
- StringDisplay
- StringInput
- Recipe
- Tag
- TagGroup
- TagLabel
- Text
- Trend
Remarks
- 当复制或克隆 Group 对象时,不会复制组的任何事件处理程序。
- 要阻止 Group 对象引发事件(基于 VBA),选择此对象然后选择“取消组合”。当重组对象时,将不再触发 VBA 中的事件。
- 如果对 VBA 显示的 Group 对象中包含可生成鼠标事件的对象,则将不再触发 Group 对象内的对象事件。例如,如果按钮属于一个 Group 对象且其中的事件对 VBA 显示,则按钮的鼠标事件将不再触发。
- 如果复制具有与自身关联的 VBA 代码的对象,可能不会复制注释。原因在于,当为代码添加注释时,注释通常位于函数的上方。这些注释不被复制。如果希望注释和代码一起被复制,确保将其置于函数体内。
提供反馈