var
x:longint;
a:string;
begin
x := GetSystemMetrics(SM_CXSCREEN);
Str(x,a);
Label1.Caption := '显示器水平分辨率' + a;
x := GetSystemMetrics(SM_CYSCREEN);
Str(x,a);
Label2.Caption := '显示器垂直分辨率' + a;
end;

解决方案 »

  1.   

    另外还可以动态调整显示器的分辨率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);
    //在delphi5+windows2000上通过。
    begin
      if DynamicResolution(640, 480) then
        ShowMessage('Now is 640*480');
    end;
    procedure TForm1.Button2Click(Sender: Tobject);
    begin 
     if DynamicResolution(800, 600) then 
       ShowMessage('Now is 800*600');
    end;
      

  2.   

    screen.width
    screen.height
    :)