本人初学不久,在windows2000环境下17寸的显示器下设计了一个刚好一屏大的窗口,大约是1024*750左右吧,在其他的机器上运行正常。但是在14.1''的笔记本电脑上(1024*768),Form出现了垂直滚动条,怎样可以修改,让其在14.1''笔记本电脑上运也和再台式机上一样,不出现滚动条?
谢谢,各位高手指点

解决方案 »

  1.   

    主窗体的OnShow事件写
    procedure TfmMain.FormShow(Sender: TObject);
    begin
      SendMessage(Handle,WM_SIZE ,SIZE_MAXIMIZED,0);
    end;
      

  2.   

    把那个AutoScroll设成False就行了。
      

  3.   

    整体的解决方法都不会很好!就跟做网页一样,为了在不同分辨率下,TABLE中都在IE中间显示,所以会固定TABLE,我们写FORM完全可以借鉴,没必要为了一个分辨率的问题,大张旗鼓的改来改去影响编写,所以,1、我提倡设计时候在800*600下进行,然后固定窗体的大小,2、用户觉得不满意可以通过最大化来看,但可以用Panel加在Form中中间显示!在FormResize事件中然Panel的LEFT和TOP移动到最佳位置!总结还是提倡第一中方法
      

  4.   

    让你的程序自适应分辨率:
    implementation
      const
      ScreenWidth:LongInt=800;
      ScreenHeight:LongInt=600;
      {$ R*.DFM}
      procedure TMainForm.FormCreate(Sender:TObject);
      var
      OldFormWidth:integer;
      begin
      Scaled:=TRUE;
      if(Screen.width<> ScreenWidth)then
      begin
      OldFormWidth:=Width
      Height:=longint(Height)*longint(Screen.Height)DIV S creenHeight;
      Width:=longint(Width)*longint(Screen.Width)DIV Scre enWidth;
      ScaleBy(Screen.Width,ScreenWidth);
      Font.Size:=(Width DIV OldFormWidth)*FontSize;
      end;
      end;
      

  5.   

    试试xinshiji(无名) 的代码吧
      

  6.   

    建议多用几个panel
    利用它的altop,alleft,
    分区域保证最少有一个是alClient
      

  7.   

    xinshiji(无名) 的代码有错啊