splash.pas

来自「合成实验的上位机程序」· PAS 代码 · 共 65 行

PAS
65
字号
unit Splash;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, Buttons;

type
  TSplashFrm = class(TForm)
    Image1: TImage;
    Label1: TLabel;
    Label2: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure Label2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  SplashFrm: TSplashFrm;
  lpDevMode: TDeviceMode; //关于显示器分辨率的变量
  disFlag: Boolean;       //记录显示器分辨率是否改变的变量

implementation

uses Main;

{$R *.dfm}

//**********本单元中所有代码用于改变显示器的分辨率为1024×768,85Hz************//
function DynamicResolution(X,Y,F:word):BOOL;
begin
  Result:=EnumDisplaySettings(nil,0,lpDevMode);
  if Result then
  begin
    lpDevMode.dmFields:=DM_PELSWIDTH Or DM_PELSHEIGHT Or DM_DISPLAYFREQUENCY;
    lpDevMode.dmPelsWidth:=X;
    lpDevMode.dmPelsHeight:=Y;
    lpDevMode.dmDisplayFrequency:=F;
    Result:=ChangeDisplaySettings(lpDevMode,0)=DISP_CHANGE_SUCCESSFUL;
  end;
  if Result=True then
    disFlag:=True
  else
    disFlag:=False;
end;

procedure TSplashFrm.FormCreate(Sender: TObject);
begin
  //********************刷新显示器的分辨率为1024*768**************************//
  if Screen.Width<>1024 then
    DynamicResolution(1024,768,85);  
end;

procedure TSplashFrm.Label2Click(Sender: TObject);
begin
  //关闭关于窗体
  SplashFrm.Close;
end;

end.

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?