TEditVkey = class(TWinControl)
  private
    fpnl1: TPanel; 
    FEdt1: TEdit;
procedure something();
begin
  fpnl1.create..
  fpnl1.parent := self.parent //最好是此控件所在窗体;
  fpnl1.show();
end;
这样写,是不会显示的.请问,我如何能让TPanel显示.
当然,是显示在此控件之外的.最好还能取得此控件所在的窗体.而不是他所在的容器(当然还要有此控件,对于所在窗体的位置)查了一下,没查到.
哪位帮个忙

解决方案 »

  1.   

    这个不就是动态创建组件,设置一下位置和Parent,然后把Visible设为True就可以了。
      

  2.   

    可以显示。获取窗体,循环获取parent直到为nil
      

  3.   


    没有这么简单的..
    fpnl1.parent := self.parent //最好是此控件所在窗体;
    就这样,都显示不出来..我记得好像要一个什么特别的显示函数才能显示出来..但是我没查到...你可以先试一下.
      

  4.   


    试过了,可以显示,可能你显示的位置不对,看不到。
    你直接放你的控件在窗体上,设置fpnl1.left top 为0看看