【发布时间】:2019-02-27 13:19:00
【问题描述】:
我有一个界面IView:
Option Explicit
Public Event OnClientSelected()
Public Property Get ClientNames() As Variant
End Property
(...)
但我无法在我的用户表单中实现该事件。允许实现属性和子类,但不允许实现事件。
可以用事件做接口实现吗?
【问题讨论】:
-
你是否以WithEvents的形式声明了IView对象?
-
我希望表单是接口的实现,所以我没有 IView 对象。我使用:实现 IView
-
一个MCVE 会很好。我认为您不能直接拥有事件处理和接口(WithEvents 和 Implements)。见stackoverflow.com/questions/41023670/…
-
不,这是不可能的。验证这一点的最佳方法是不实现
Event以及接口的其余部分。这仍然可以编译 - 如果Event被认为是接口的一部分,你会得到一个编译错误。