我想把现有的两个组件比如Timage和Tpanel组合成一个整体,作为一个整体来创建,如何实现!

解决方案 »

  1.   

    哈哈。。又来一个这个问题。。正好刚写的。。
    一个框架,自己完善。
    TNewPanel=class(TCustomPanel)
       pvivate
        FImage:TImage;
        procedure SetImage(Val:TImage);
       protected
        procedure Paint;override;
       public
        constructor Create(AOwner:TCOmponent);override;
        destructor  destroy;override;
       published
        property Image:TImage read FImage write SetImage;
        ......
    construtor TNewPanel.Create(AOwner:TComponent);
    begin
       inherited Create(aOwner);
       SetBound(0,0,150,100);
       FImage:=TImage.Create(Self);
       FImage.Parent:=self;
      // FImage.AutoSize:=true;
       FImage.align:=alClient;
    end;
    destructor TNewPanel.Destroy;
    begin
     FImage.free;
     inherited destroy;
    end;
    procedure TNewPanel.SetImage(Val:TImage);
    begin
      FImage.assign(val);
      invalidate;
    end;
    procedure TNewPanel.paint;
    begin
     inherired;//
    end;
      

  2.   

    jinjazz(我是jin) ( ) 信誉:98  2004-4-22 9:15:30  得分:20 
     
     
      
    放个panel,在里面放个image控件选中panel 点击component菜单的create component...点击ok你就可以在vcl的templates页直接使用带有image的panel了  
     //////////
    哎。。IDE月来越高级了写组件也要失业了???????幸好我不是。。
      

  3.   

    VCL不是这样写的!1.身为一个程序员,这么几行代码打错那么多字,说不过去。2.这种组合控件没任何意义,两个字:费劲!3.像这样写组件,不是失业,而是离门槛还有一大截楼上的还来学习,看来人如其名话说重了点。但实在看不过去,这种代码还贴出来误导一些刚入门的同学
      

  4.   

    哦。。有日子没来了。
    楼上的兄弟的话又给我提了个醒。不过还请阁下具体说说。我无心误导谁。
    请说说真正的VCL是如何写的。看来我学的这几天离门槛还远。
    随手写的代码当然会写拼写错误。但是这不至于误导人吧?
    这种组合控件没任何意义,两个字:费劲! 还请赐教!