如果两台显示器的分辨率不一样,我的窗口大小怎么样才能跟着变化呢?在窗口中的dbgrid表格怎么样才能跟着窗口大小的变化而变化?

解决方案 »

  1.   

    没具体做过,你看这样思路行不:在窗体的OnShow中遍历可视控件,设其宽高都乘以屏幕分辩率改变的倍数,也许能达到一些效果
      

  2.   

    分辨率问题,给你做个参考,假设你是在1024*768下设计的程序。
    Const
      Orignwidth=1024;
      Orignheight=768;  inherited;
      Font.Name := '宋体';
      Font.Size := 9;
        //分辨率问题
      if(Screen.width <> Orignwidth)then
      begin
        FWidth:=Width;
        Scaled:=TRUE;
        Font.Size:=(Width DIV FWidth)*Font.Size;//字体大小调整
        ScaleBy(Screen.Width,Orignwidth); //控件大小调整
        Height:=longint(Height)*longint(Screen.Height) DIV Orignheight;
        Width:=longint(Width)*longint(Screen.Width) DIV Orignwidth;//窗口大小调整
      end;