程序运行时窗体最大化显示,设计时组件都摆好了位置,但运行时组件却都集中在偏左上方的位置。有什么方法能让窗体在不同屏幕分辨率的屏幕下最大化,组件都能集中在中间位置呢?

解决方案 »

  1.   

    哎,提个问还要分。我是来赚分的。
    控件的anchors可以设置。配合align属性。
      

  2.   


    具体怎么设置呢?我把anchors的四个属性都设为false,运行后还是挤在左上方一样。
      

  3.   

    或者 OnPaint 事件里,根据窗体大小重新计算调整...
      

  4.   

    一般写程序,窗体都是继承几个祖窗体的,祖窗体内一般都定义了功能区:按键区通过控件自己调整位置,参数选择区位置写死,数据显示区不需要调整位置,一般都是 alClient 的,填充整个窗体剩余部分...假如你的程序结构不是这个样子,那就比较麻烦了,我也没什么好的思路,只能挑选最常用的分辨率,固定窗体大小,调整控件位置了...再或者,新建一个窗体,重新划分功能区,用Panel写函数计算控件个数,然后按照类型给控件动态分配大小、位置,最后把各个Panel拷到各个页面,再把代码拷进去,这样相对工作量已经比较少了...