请问程序中如何设置分辨率800*600?

解决方案 »

  1.   

    const w=800;
          h=600;
    begin
    form1.Scaled :=true;
    if screen.Width <> w then
    begin
        form1.Width:=longint(form1.width) * longint(screen.Width) div w ;
        form1.Height :=longint(form1.Height )* longint(screen.height) div h;
        form1.ScaleBy(screen.Width ,screen.Height );end;
    end;
      

  2.   

    //调整显示属性,我写的贡献给你
    function SetResolution(BitsPerPel, PelsWidth, PelsHeight, DisplayFrequency: Word): Boolean;
    var
      lpDevMode: TDeviceMode;
    begin
      Result := EnumDisplaySettings(nil, 0, lpDevMode);
      if Result then
      begin
        lpDevMode.dmFields := DM_BITSPERPEL or DM_PELSWIDTH or DM_PELSHEIGHT or DM_DISPLAYFREQUENCY;
        lpDevMode.dmBitsPerPel := BitsPerPel;
        lpDevMode.dmPelsWidth := PelsWidth;
        lpDevMode.dmPelsHeight := PelsHeight;
        lpDevMode.dmDisplayFrequency  := DisplayFrequency;
        Result := ChangeDisplaySettings(lpDevMode, 0) = DISP_CHANGE_SUCCESSFUL;
      end;
    end;—————————————————————————————————
    宠辱不惊,看庭前花开花落,去留无意;毁誉由人,望天上云卷云舒,聚散任风。
    —————————————————————————————————
      

  3.   

    楼上的应该是用来根据分辨率改变form吧。要改变监视器分辨率可以用这两个函数:
    EnumDisplaySettings()
    ChangeDisplaySettings()Example:function DynamicResolution(X, Y: word): BOOL;
    var
      lpDevMode: TDeviceMode;
    begin
      Result := EnumDisplaySettings(nil, 0, lpDevMode);
      if Result then
      begin
        lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
        lpDevMode.dmPelsWidth := X;
        lpDevMode.dmPelsHeight := Y;
        Result := ChangeDisplaySettings(lpDevMode, 0) =DISP_CHANGE_SUCCESSFUL; 
      end
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
      if DynamicResolution(640, 480) then
        ShowMessage('Now is 640*480');
    end;
      

  4.   

    感谢回复!
     lxpbuaa(桂枝香在故国晚秋) 的源码怎麽用?
    谁帮忙看一下!
      

  5.   

    来者有分,帮帮忙!我的主窗体是mdi。我的显示器分辨率为1024*768。要求显示在分辨率为800*600的时候不出现滚动条的情况。我是新手,请帮忙!
      

  6.   

    改变分辨率就用这两个函数。
    EnumDisplaySettings()
    ChangeDisplaySettings()
    尽管它提供了改变刷新频率的参数,但就是用不了,不知道为什么。
      

  7.   

    function DynamicResolution(X, Y: word): BOOL;
    var
    lpDevMode: TDeviceMode;
    begin
    Result := EnumDisplaySettings(nil, 0, lpDevMode);
    if Result then
    begin
    lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
    lpDevMode.dmPelsWidth := X;
    lpDevMode.dmPelsHeight := Y;
    Result := ChangeDisplaySettings(lpDevMode, 0) = DISP_CHANGE_SUCCESSFUL;
    end
    end;
    偶帮你找的
      

  8.   

    改变分辨率就用这两个函数。
    EnumDisplaySettings()
    ChangeDisplaySettings()获得分辨率的函数是什麽?