对话框改变大小时怎么让控件也随之变化。看了下论坛上给出的方法基本是Onsize()或者这个链接下http://blog.csdn.net/scq2099yt/archive/2008/03/12/2174124.aspx的类lxDialog。
由于我现在用的对话框中需要添加大量的控件,使用OnSize()将会很麻烦,使用lxDialog类,由于控件太多,控件的移动和比例设置的调试将会花不少事件,不知道大家是否有更好的方法,谢谢!

解决方案 »

  1.   

    到codeproject搜一下ResizableDialog
      

  2.   

    到codeproject搜一下ResizableDialog
      

  3.   

    先计算好缩放比例,然后用循环FindWindowEx查找出所有控件,逐个调整,如果有子窗口可以用递归的方式遍历。
      

  4.   

    FindWindowEx遍历是一个好方法,但是如果控件ID都是有顺序的,也可以直接循环。还可以把控件ID放入一个数组,进行循环,调整大小MoveWindow就可以做到
      

  5.   

    FindWindowEx(),这个怎么用法啊,能说得比较详细点吗?不懂这个的。
      

  6.   

    VC++之随父窗口变化调整控件大小 
    http://www.cppblog.com/Lee7/archive/2008/04/14/47062.html或者到codeproject.com网站上搜下CSizingDialog,这个类蛮好的。可以根据需要调整控件的大小比例。
      

  7.   

    楼上的方法是可行的,但我不建议调整对话框中的控件的大小和位置,为什么?也许你在开发的时候没遇到问题,但拿到客户的机器上就有问题了,因为windows有个“dpi”设置,默认是96dpi,但可以调整为其它值,你可以自己试试看,我只是告诉你要注意一下这个,因为这个问题我碰到过。