请问,如何将窗体做成控件。
使得,调用时,该窗体能够镶嵌到新窗体上。
是不是用frame,跪求大神。

解决方案 »

  1.   

    楼主可能把问题想复杂了。任何对象都可以做成控件,包括含有窗体的对象。控件不一定非要安装。PAS 模块里声明的对象都可以直接调用,动态生成对象实例。当然,窗体类控件安装后便于可视化设计,但安装控件也有副作用:换台电脑你还得安装一遍,而且不同 Delphi 版本还有兼容问题。只要以 TForm(或其父类)为基类派生一个新对象,再加上你自己的东西,就能构成窗体控件。想把它镶嵌到另一窗体中,只要把 Parent 属性赋值为父窗体就行了。别把 Owner 属性和 Parent 弄混。Owner 是管辖者,负责释放子对象。Parent 负责把子窗体显示在父窗体中。
      

  2.   


    一般用Frame,你要写成控件也行的。
      

  3.   

    窗体可以直接镶嵌的!
    设置form1.Parent := form2.Panel1;
    form1.Visible := true;
    form1.align := alClient;
    ……
      

  4.   

    做成控件 你要做成什么控件?我都是喜欢放在 Panel上面 做控件.  这样拖出来还是个 panel