我想问一下,我在800*600的分辨率下做的程序,比如主窗体设置了最大化,到了1024*768的分辨下不会只显示800*600部分吧.怎么解决这种分辨率问题?
解决方案 »
- 主窗体创建事件不能进入断点?
- 怎样用delphi实现给paradox表加密码?急!!!
- 关于DBChart动态分页的问题,解决问题,立刻给分!
- 请教高手一个控件……
- 大家好,我是Delphi初学者,有小问题想请教各位高手,可以赐教吗?
- 初学者控件问题?
- 50分请教,我在cellclick中怎么改变当前行的颜色??
- 使用IntraWEB发布为后台服务程序时,里面使用相对路径出错!我让adoconnectionstring的值是 FILE NAME=.\dblink.udl
- Bitbtn图标类型
- 解决这个问题,给你100分。(一个关于打印方面的问题)
- 关于用 ADO连的access数据库从单机用户能否改成网络用户 在线等...
- 关于三层模式下用CLIENTDATASET读取BLOG字段的图片显示不全的问题
1.在程序启动时设成1024*768:setdisplaymode(true);
2.在程序退出时,还复用户设置:setdisplaymode(false);
3.用户手册中写明"程序运行在1024*768环境下"以下是我的setdisplaymode
function setdisplaymode(const setnew:bool):bool;
var
newmod:TDeviceMode;
const
{$j+}
oldmod:TDeviceMode=();
{$j-}
begin
result:=false;
if setnew then
begin
if not EnumDisplaySettings(nil,$ffffffff,oldmod) then
exit;
if oldmod.dmPelsWidth=1024 then
begin
result:=true;
exit;
end;
newmod:=oldmod;
newmod.dmPelsWidth:=1024;
newmod.dmPelsHeight:=768;
if ChangeDisplaySettings(newmod,CDS_TEST)<>DISP_CHANGE_SUCCESSFUL then
begin
newmod.dmDisplayFrequency:=85;
while newmod.dmDisplayFrequency >= 60 do
begin
if ChangeDisplaySettings(newmod,CDS_TEST)=DISP_CHANGE_SUCCESSFUL then
break;
newmod.dmDisplayFrequency:=newmod.dmDisplayFrequency-5;
end;
end;
result:=ChangeDisplaySettings(newmod, CDS_RESET)=DISP_CHANGE_SUCCESSFUL;
end else
if oldmod.dmPelsWidth<>1024 then
ChangeDisplaySettings(oldmod,CDS_RESET);
end;