要求该窗体在改变大小时里面的控件大小也跟着改变
并且始终在窗体中保持居中,当窗体小到一定程度时
禁止窗体的大小改变了。
各位大虾,小弟接触Window编程不久对这方面不是很
了解。请各位大虾指点迷津!谢谢先!!

解决方案 »

  1.   

    自己在form的onresize事件中写代码
      

  2.   

    用PANEL,用它的ALIGN属性,应该能够满足你的要求,具体要自己试试啦
      

  3.   

    可设置Form的minHiegth,minWidth,MaxHiegth,MaxWidth,让它保持一大小度。
    居中就在onresize中写代码了。
      

  4.   

    居中:panel.top := (form1.height-panel1.height)/2;
          panel.left := (form1.width-panel1.width)/2;
    控件大小也跟着改变: 可以用Form1.ScaleBy; 或自己计算出控件的大小再给他们赋值;
    当窗体小到一定程度时禁止窗体的大小改变了:
    在Form1的OnResize中写代码
      if Width < MinWidth then
        Width := MinWidth;
      if Height < MinHeight then
        Height := MinHeight;             
      

  5.   

    能详细说说Form的ScaleBy方法的使用吗?
    有代码更好
    谢谢!!
      

  6.   

    将控件的Anchors设置为全部为true就好了
      

  7.   

    谢谢各位大虾!
    我试过各位所提的方法都可以。
    但是如果我想在Form上放一个Panel,里面放再一个Edit和一些Button,当窗体大小发生变化时Edit大小发生变化而Button大小不变化但其位置发生变化(Button们与Edit的位置比例不变),给人感觉就像远景放大了而比例却不变化。
    我不知道怎么根据窗体的变化来控制Button的位置, 
    或者有没有更好的办法呢?不好意思~~~~  现在才回贴 :)
    谢谢了?
      

  8.   

    再OnResize事件中取得Form的Width和Height值(不要告诉我你不会取)。
    然后根据新的窗体大小算出Edit的大小值并赋给Edit的Width和Height。然后根据新的Edit大小值加减一个常数得到Button的位置,然后赋给Button的Left和Top。