我仍然试图围绕VBA中的接口和事件如何协同工作(如果有的话).我即将在Microsoft Access中构建一个大型应用程序,我希望尽可能灵活和可扩展.为此,我想利用MVC,接口(2)(3),自定义集合类,使用自定义集合类引发事件,找到更好的方法来集中和管理由窗体上的控件触发的事件,以及一些额外的VBA设计模式.
我预计这个项目会变得非常毛茸茸,所以我想尝试在VBA中一起使用接口和事件的限制和好处,因为它们是我认为在VBA中真正实现松散耦合的两种主要方式(我认为).
首先,有一个问题是在尝试在VBA中一起使用接口和事件时引发的错误.答案指出"显然不允许事件通过接口类传递到具体类中,就像你想使用'Implements'一样."
然后我在另一个论坛的答案中找到了这个陈述:"在VBA6中,我们只能引发在类的默认接口中声明的事件 - 我们不能引发在Implemented接口中声明的事件."
因为我还在寻找接口和事件(VBA是我真正有机会在现实环境中尝试OOP的第一种语言,我知道不寒而栗),我无法在脑海中彻底解决所有问题这意味着在VBA中一起使用事件和接口.听起来你可以同时使用它们,听起来有点像你不能.(例如,我不确定上面的"一个类的默认接口"与"一个已实现的接口"是什么意思.)
有人能给我一些基本的例子,说明在VBA中一起使用接口和事件的真正好处和局限吗?