unit1.~pas
来自「用DELPHI来实现设置显示器分别率 用DELPHI来实现设置显示器分别率」· ~PAS 代码 · 共 67 行
~PAS
67 行
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellApi;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
ScreenBL_H,ScreenBL_V:Double;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
lpDevMode:TDeviceMode;
Result:Bool;
begin
Result := EnumDisplaySettings(nil, 0, lpDevMode);
if Result then
begin
//lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
lpDevMode.dmFields:=DM_PELSWIDTH or DM_PELSHEIGHT or DM_DISPLAYFREQUENCY;
lpDevMode.dmPelsWidth := 1152;
lpDevMode.dmPelsHeight := 864;
lpDevMode.dmDisplayFlags:=DM_DISPLAYFREQUENCY;
lpDevMode.dmDisplayFrequency:=85;
//Result := ChangeDisplaySettings(lpDevMode, 0) = DISP_CHANGE_SUCCESSFUL;
ChangeDisplaySettings(lpDevMode, CDS_UPDATEREGISTRY);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
lpDevMode:TDeviceMode;
Result:Bool;
begin
Result := EnumDisplaySettings(nil, 0, lpDevMode);
if Result then
begin
lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT or DM_DISPLAYFREQUENCY;
lpDevMode.dmPelsWidth := 1024;
lpDevMode.dmPelsHeight := 768;
lpDevMode.dmDisplayFlags:=DM_DISPLAYFREQUENCY;
lpDevMode.dmDisplayFrequency:=85;
ChangeDisplaySettings(lpDevMode, CDS_UPDATEREGISTRY);
end;
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?