一、如何动态更改屏幕分辨率 有许多小工具可以在不重新启动Windows的条件下,动态更改屏幕分辨率。你是不是也想自己动手做一个呢?请在interface段中加入下面一句 function Resolution(X,Y:word):boolean; 然后在implementation段中写入如下代码: function Resolution(X,Y:word):boolean; var DevMode:TDeviceMode; begin Result:=EnumDisplaySettings(nil,0,DevMode); if Result then begin DevMode.dmFields:=DM_PELSWIDTH Or DM_PELSHEIGHT; DevMode.dmPelsWidth:=X; DevMode.dmPelsHeight:=Y; Result:=ChangeDisplaySettings(DevMode,0)=DISP_CHANGE_SUCCESSFUL; end; end; 接着,在form中放个button,caption为“800×600”,然后在其OnClick事件中写下 if Resolution(800,600) then ShowMessage('800×600模式!');
看错了,是颜色位数啊!这样: function Resolution(bits:word):boolean;var Form1: TForm1;implementation{$R *.dfm}function Resolution(bits:word):boolean; var DevMode:TDeviceMode; begin Result:=EnumDisplaySettings(nil,0,DevMode); if Result then begin DevMode.dmFields:= DM_BITSPERPEL; DevMode.dmBitsPerPel := bits; Result:= ChangeDisplaySettings(DevMode,0) = DISP_CHANGE_SUCCESSFUL; end; end; procedure TForm1.Button1Click(Sender: TObject); begin if Resolution(32)then ShowMessage('success') else ShowMessage('failed!'); end;
有许多小工具可以在不重新启动Windows的条件下,动态更改屏幕分辨率。你是不是也想自己动手做一个呢?请在interface段中加入下面一句
function Resolution(X,Y:word):boolean;
然后在implementation段中写入如下代码:
function Resolution(X,Y:word):boolean;
var
DevMode:TDeviceMode;
begin
Result:=EnumDisplaySettings(nil,0,DevMode);
if Result then
begin
DevMode.dmFields:=DM_PELSWIDTH Or DM_PELSHEIGHT;
DevMode.dmPelsWidth:=X;
DevMode.dmPelsHeight:=Y;
Result:=ChangeDisplaySettings(DevMode,0)=DISP_CHANGE_SUCCESSFUL;
end;
end;
接着,在form中放个button,caption为“800×600”,然后在其OnClick事件中写下
if Resolution(800,600) then ShowMessage('800×600模式!');
Form1: TForm1;implementation{$R *.dfm}function Resolution(bits:word):boolean;
var
DevMode:TDeviceMode;
begin
Result:=EnumDisplaySettings(nil,0,DevMode);
if Result then
begin
DevMode.dmFields:= DM_BITSPERPEL;
DevMode.dmBitsPerPel := bits;
Result:= ChangeDisplaySettings(DevMode,0) = DISP_CHANGE_SUCCESSFUL;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if Resolution(32)then
ShowMessage('success') else
ShowMessage('failed!');
end;