我想实现以下功能:点击菜单或工具栏按钮,进入某个程序模块,此时不弹出新窗体显示该程序模块的各种控件组合,而是仍然在主窗体上显示。进入别的程序模块,主窗体上显示的控件组合更新。
    用直接控制每个控件的显示或隐藏固然可以实现以上功能,但写代码控制每一个控件太繁了,而且设计期一大堆控件搁一块太乱了。
    试过用MDI窗体,也达不到我要的显示效果。
    有没有哪种容器,不同的控件组合放在几个容器中,进入某个程序模块只要加载相应的容器就行了?

解决方案 »

  1.   

    用panel试试
    不过效果应该不算太好
      

  2.   

    用TFrame啊,
    先创建窗体,然后在上面照常放上你要的控件,
    然后编写代码。
    然后再点那个TFrame控件,放到你的主窗体上,
    然后选择你刚刚创建的窗体,这样就可以了。
    你可以控制Frame,就可以控制整个窗体的内容了,
    很好用的。
      

  3.   

    用PageControl可以
    将各个控件按类放到各个TTabSheet上
    然后每个TTabSheet的TabVisible设为False;
    切换时
    将PageControl.ActivePageIndex赋为要设置的那页的索引就可