我继承的是TPanel类,我在Imagepanel类中增加了一个ImageFileName字段来接受输入图片的路径。
这个组件可以安装,但是再实际使用的时候,提示TImage类找不到等unit Imagepanel;interfaceuses
  Windows, Messages, SysUtils, Classes, Controls, ExtCtrls;type
  TImagepanel = class(Tpanel)
  private
    FImage:TImage;
    FFileName:String;
    procedure SetPanelImage(Value:String);
  protected
    { Protected declarations }
  public
     constructor Create(AOwner: TComponent);
  published
    property ImageFileName:String Read FFileName Write SetPanelImage;
  end;procedure Register;implementationprocedure Register;
begin
  RegisterComponents('Custom', [TImagepanel]);
end;{ TImagepanel }constructor TImagepanel.Create(AOwner: TComponent);
begin
  inherited Create(AOwner);
  FImage :=TImage.Create(Self);
  FImage.Align := alClient;
end;procedure TImagepanel.SetPanelImage(Value: String);
begin
  if Value ='' then Exit;
  FFileName := Value;
  FImage.Picture.LoadFromFile(Value);
end;end.

解决方案 »

  1.   

    uses
      Windows, Messages, SysUtils, Classes, Controls, ExtCtrls,graphical;
      

  2.   

    constructor TImagepanel.Create(AOwner: TComponent);
    begin
      inherited Create(AOwner);
      FImage :=TImage.Create(Self);
      Fimage.Parent := self;    //---------------->加上这句
      FImage.Align := alClient;
    end;
      

  3.   

    谢谢miky(miky) ,
    我马上我就给分了,但是我怎么能够使用Panel的事件啊,如Click等等,我这样做了以后,在OnClick中写了代码,但是就是不执行,这是为什么?