在Delphi里面 如何可以实现类似"容器"的功能
举个例子 MS的"组织结构图" 可以“操作界面”里面拖入一个个东西 然后可以选中删除什么的
又如 QQ秀或是QQ家园那样 可以把各种东西放在一个容器里面 拖动删除什么的 有“层次”(这个“层次"自己实现好像不是很简单)
再如 delphi的窗体编辑就是了 最好的例子 把各个控件拖进去 可以显示属性 选中什么的
我的想法是放一个panel 然后动态生成里面的控件 并给里面控件加入onMouseDown onMouseUp的代码
不过这样处理似乎比较复杂我还没开始动手做 有没有那个前辈有类似经验的 我来讨教讨教

解决方案 »

  1.   

    http://community.csdn.net/Expert/topic/3777/3777982.xml?temp=.4445307
      

  2.   

    happy new year 
     来瞧瞧
      

  3.   

    晕 没说我要散分啊 怎么都是接分的???动态创建控件没问题关键是动态创建控件是不是最好的办法??
    很难想象在一个panel里面创建3000个label以后的情形 效率肯定很低
      

  4.   

    给做容器的类加一个子控件列表的属性然后在子控件的构造函数中,将自己添加到这个列表中然后在容器移动的时候遍历所有的子控件VCL里其实也是这么做的这就是为什么create里要传进owner的原因了