表单的大小自适应问题,急,在线等(50分)

  • 主题发起人 主题发起人 poto5269
  • 开始时间 开始时间
P

poto5269

Unregistered / Unconfirmed
GUEST, unregistred user!
软件在屏幕分辨率为1280*800的计算机上开发,但在其它个人计算机上使用时出现了大小不等,导致界面变型严重的大问题,严重影响了使用,其它计算机有的使用800*600,有的使用1024*768,如何让程序能自动适应使用都的分辨率,从而保证其正常使用呢?
急,在线等....
请各位大侠帮小弟一下
(如能解决问题可加分)
 
有没有人知道啊?[:(]
 
把窗体的对齐方式设为clClient,然后上边的可视控件采用相对位置对齐的方式。
 
給你一段代碼﹐我自己有用的(以前DFW上有講過的哈。。)﹐記得給俺分哈
//===========================屏幕窗體分辨率自適應===========================
//--Form調用的窗體
procedure auto_WH(const form:TForm);
var
x,y:Longint;
i:integer;
creenwidth,screenheight:integer;
begin
creenwidth:=1024;//默認為1024*768
screenheight:=768;
form.scaled:=true;
x:=getsystemmetrics(SM_CXSCREEN);
y:=getsystemmetrics(SM_CYSCREEN);
IF(X<>creenwidth)or (Y<>screenheight) then
begin
form.HEIGHT:=form.HEIGHT*X DIV creenwidth;
form.WIDTH:=form.WIDTH*Y DIV screenheight;
form.ScaleBy(X,creenwidth);
end;
SendMessage(Form.Handle,WM_SIZE,SIZE_MAXIMIZED,0);
end;
 
后退
顶部