国家卫计委官网站:特急悬赏:CB中自制的ActiveX如何触发自定义事件

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/30 11:12:30
我在C++Builder中新建了一个ActiveForm,在它的分派接口中加入了自定义的事件OnMyEvent,CB自动产生了相应的Fire_OnMyEvent()字面意思好像是用来触发事件的。我在ActiveForm上放了一个标准按钮控件,希望点击此按钮时能触发OnMyEvent,但是直接调用Fire_OnMyEvent()编译报错!我该怎样触发自己定义的事件呢???谢谢关注!!!(对于有这方面经验的人应该是很简单的事情,但我急得要命!)

BCB为ActiveForm创建了两个类,Fire_OnMyEvent()声明在ActiveFormImpl类中,而触发一般在ActiveFormX类中,所以要想触发自定义事件需要将ActiveFormImpl实例化,后调用。如在ActiveFormImpl.cpp中写TActiveFormImpl *impl;在OnPaintEvent()的定义中添加impl=this;
在需要触发事件的地方调用impl->Fire_OnMyEvent()即可。