我是这样创建的 sub:=TSubWinControl.Create(self);
当用sub.handle就出错。提示"has not parent window"
怎样解决

解决方案 »

  1.   

    是不是没有给控件指定一个Parent比如:
    sub.Parent := Self;
    然后在试试
    sub.Handle
      

  2.   

    TWinControl控件都需要指定父窗口来决定怎样显示。
    没有父窗口当然会出错。
    sub.parent=你需要指定的窗口.
      

  3.   

    补充:
      因为TWinControl控件为可视控件,必然涉及到很多消息的处理,如重画自己。而WindowS操作系统消息机制就决定了任何可视控件(有消息处理的)都必须具有父窗口。
      w1----w11
         |__w12
         |__w13____w131
                |__w132
    指定了父窗口就成为窗口树中的一个节点,也才能获得消息.  
      

  4.   

    如果你的控件需要消息处理,你没有指定父窗口,Windows当然会认为你错。