我用了以下函数修改了分辩率,但下面的状态条不跟着变,(例如从1024--800就看不见开始菜单项了)还需要怎么改才行?
function changedisplay(x,y :integer):boolean;
var
lpDevMode: TDeviceMode;
begin
if screen.Width<>x then
if EnumDisplaySettings(nil, 0, lpDevMode) then
begin
lx:=screen.Width;
lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth := x;
lpDevMode.dmPelsHeight := y;
ChangeDisplaySettings(lpDevMode, 0);
end
else
result:=false
else
result:=false;
end;
function changedisplay(x,y :integer):boolean;
var
lpDevMode: TDeviceMode;
begin
if screen.Width<>x then
if EnumDisplaySettings(nil, 0, lpDevMode) then
begin
lx:=screen.Width;
lpDevMode.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
lpDevMode.dmPelsWidth := x;
lpDevMode.dmPelsHeight := y;
ChangeDisplaySettings(lpDevMode, 0);
end
else
result:=false
else
result:=false;
end;
解决方案 »
- idpop3如何收邮件正文(不考虑附件)
- 关于多线程处理数据库的两个问题?
- 关于BDE,ADO弱弱的问^_^b高手请进~~~~~
- EXCEL问题:如何让EXCEL单元格内容不可见(最好显示为****)?但又不影响其它单元格调用这个数据。
- 通过Image.Picture.Bitmap.Assign(MyJpeg)播放图象,怎样才能不出现闪烁?
- 如何用Http协议传送文件 除UP者外,皆有分 在线等
- 哪里有关于delphi的书?
- 关于adoquery.clone
- DBGrid绑定查询数据
- 如何进行数字的四舍五入的操作?
- 恳请大家帮帮忙~~~~~~~~~~~~
- 急求用websnap做的购物篮系统,救命啊
我的做法
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;
lpDevMode.dmDisplayFrequency := 75;//刷新率
Result := ChangeDisplaySettings(lpDevMode, CDS_UPDATEREGISTRY) = DISP_CHANGE_SUCCESSFUL;
//CDS_UPDATEREGISTRY 必须写,呵呵,要不就有你好看的(任务栏不变 )
end;
end;
记得给分呀!