首先,这是一个关于界面的问题。我先描述一下我的问题吧:界面是典型的SDI模式,左边是树控件,右边是FormView。在树控件上点击一个子节点,在FormView上就显示相应的对话框,显示的对话框作为FormView的子对话框,这样的对话框有6个。每个对话框的内容都不同。
现在想实现这样的功能:1、程序启动后即全屏,这个不难。
2、全屏后,由于每个字对话框的大小都不同(因为对话框上的内容不同),所以右边的FormView总会有一些地方没有被子对话框覆盖。要解决这个问题,怎么办?
3、怎么实现SDI非最大化的时候,右边的FormView可以有垂直和水平滚动条?
4、这样的需求,用这种方法实现好不好?这样的情况:即左边是树控件,需要点击不同的节点,SDI右边显示对应的界面,大家是怎么做得?有好的答案,或者例子,我再加分。谢谢

解决方案 »

  1.   

    我觉得可以像属性框那样,把你那6个窗口当成子窗口放在FormView上面他们看起来就相当于FormView在变化,而不相当于打开了6个窗口FormView会根据Form那个Dialog自动调整吧,你可以把那个窗口弄大些
      

  2.   

    2、全屏后,由于每个字对话框的大小都不同(因为对话框上的内容不同),所以右边的FormView总会有一些地方没有被子对话框覆盖。要解决这个问题,怎么办?
    ==================================
    可以在OnSize里面,自己计算,然后调整各个控件的位置。
    也可以用别人的东西,codeproject上有很多例子http://www.xiaozhou.net/cooldog/blogview.asp?logID=108
      

  3.   

    to : cpio(希望我的回复能带给您一点点帮助)首先,谢谢你的回复。我现在就是这样做的。6个对话框作为子窗体放在FormView上面,确实看起来也是FormView在变化。但是我的问题是,这这样的话,FormView根据子对话框的大小了调整大小,这样给人的感觉就很不好...因为FormView一会大,一会小我的问题其实是想解决这个问题,是我没说清楚,还是兄弟你理解有误?在线...
      

  4.   

    把对话框居中显示不就行了?
    每次View的OnSize里面调整对话框的位置.
    还在要滚动的话用CScrollView就可以了.
      

  5.   

    to kugou123(酷狗)(君看一叶舟,出没风波里) 
    谢谢,我看看你发的例子to lzzqqq(Jonersen)
    对话框居中显示?意思是把那6个字对话框居中显示吗?
    有没有什么例子可以参考的?谢谢
      

  6.   

    to kugou123(酷狗)(君看一叶舟,出没风波里)多谢你的资料。我看了下,还是有些帮助...例子多是FormView的resize的,我现在有个最主要的问题:就是FormView resize后,子对话框的大小如何处理?子对话框上控件的位置如何处理?谢谢,还请继续指点下.
      

  7.   

    4.这么做不好,可以把每个对话框做成一个从CFormView派生的视图,
    然后点击左边的节点,右边视图进行切换。把每个视图设计得尽量占满右边整个窗口。关于切换视图可以参看:http://www.vczx.com/article/show.php?id=1132