Delphi 2009:使用组件包时“找不到类”

时间:2011-05-24 12:47:57

标签: delphi delphi-2009

我有一个自定义组件包,可以毫无问题地编译和安装安装。包的源文件位于我的库路径中,生成的bpl文件的位置也是如此。安装后,包和组件正确显示在“设计包”列表中。但是,它们不会出现在工具选项板中。

但是,每当我打开包含其中一个组件的表单时,我都会收到类找不到错误,并且dfm将无法打开。该项目编译正常,我可以查看所有的pas文件,但表单不会显示在设计器中。

我在这里做错了什么?如何在表单设计器中正确显示组件?

这是我的组件注册码:

  RegisterComponents('QuoteSystem', [
    TFnpLabelNumericEdit,
      TPBxCheckBox,
      TPBxCheckBoxSub,
      TPBxComboBoxSub,
      TPBxListBoxSub,
      TPBxRadioItemSub,
      TFnpNumericEdit,
      TQGlobals,
      TPBItem,
      TPBxCheckListBox,
      TPBxCheckListBox,
      TPBxComboBox,
      TPBxDateEdit,
      TPBxDescList,
      TPBxEdit,
      TpbxInteger,
      TPBxLabel,
      TPBxLabeledEdit,
      TPBxLabelNumericEdit,
      TPBxListBox,
      TPBxMemo,
      TPBxNumericEdit,
      TPBxQuoteElement,
      TPBxRadioGroup,
      TPBxRadioItem,
      TPBxRichEdit,
      TPBxSpinEdit,
      TpbxSummaryGlobals,
      TAlignEdit
]);

3 个答案:

答案 0 :(得分:1)

发生这种情况的典型错误是在接口部分或实现部分中以小写或除正确的情况之外的任何其他情况写Register

错:

procedure register;

implementation

procedure register;

正确:

procedure Register;

implementation

procedure Register;

答案 1 :(得分:0)

你必须像这样注册你的组件

RegisterComponents ('Custom', [TMyCustomComp1, TMyCustomComp2]);

否则IDE将无法在表单设计器中创建组件。

答案 2 :(得分:0)

说服自己将包含注册代码的单元添加到包文件/项目源中的contains部分。