跟许多游戏一样,当程序运行时将显示分辨率设置成特定的分辨率,而系统的分辨率并没有改变!
如何实现,要说dephi版是能给分最多的。:)

解决方案 »

  1.   

    一般在游戏里是直接设置Width:=800;Height:=600
      

  2.   

    http://search.csdn.net/Expert/topic/1073/1073682.xml?temp=1.667422E-02
      

  3.   

    试试看
    function DynamicResolution(x, y: WORD): Boolean;
    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;
      

  4.   

    游戏在玩的时候把分辨率改成设计时候的分辨率,
    退出,或者最小化的时候在改回系统原来的分辨率,启动的时候把原始的分辨率参数自己save一下
    退出,最小化的时候改回来,不知道对不对
    反正反恐之类的游戏 如果强制结束进程,分辨率是不会变回来的。
      

  5.   

    TO:wanderung(※--※) javascript中也有screen的,他的width,height就是分辨率。