我在 RAD Studio C++Builder 10.2 中创建了一个包,其中包含许多新组件。我按如下方式注册每个组件(在.cpp
组件文件的底部):
namespace Tmbdstringgrid_component
{
void __fastcall PACKAGE Register()
{
TComponentClass classes[1] = {__classid(TMBDStringGrid)};
RegisterComponents(L"MyComponents", classes, 0);
}
}
这些组件具有新的事件处理程序,例如:
__property TNotifyEvent OnValueChange = {read=FOnValueChange, write=FOnValueChange};
安装包含这些组件的包后,在设计时将这些组件之一添加到 Form,然后通过在 Object Inspector 中双击事件来创建事件处理程序,我得到以下信息:
void __fastcall TForm1::MBDNumEdit1ValueChange(TObject *param_0)
代替:
void __fastcall TForm1::MBDNumEdit1ValueChange(TObject *Sender)
任何人都可以帮忙吗?为什么它不显示事件类型中定义的正确名称,而是使用param_0
,param_1
等?
我怀疑这与组件的注册方式有关。