首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • delphi程序窗体和控件 如何适应1440x900分辨率? [已结帖,结帖人:hewei001]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hewei001
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 结帖率:
    发表于:2008-08-21 09:04:42 楼主
    if(Screen.width <> 800)then
      begin
        FWidth:=Width;
        Scaled:=TRUE;
        Font.Size:=(Width DIV FWidth)*Font.Size;//字体大小调整
        ScaleBy(Screen.Width,800); //控件大小调整
        Height:=longint(Height)*longint(Screen.Height)DIV 600;
        Width:=longint(Width)*longint(Screen.Width)DIV 800;//窗口大小调整
      end;
    这个方法不适应1440x900分辨率..

    SOS    高手!!!!!!!
    120  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hksoobe
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-08-21 09:58:111楼 得分:5
    我也新手帮顶
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zhuhua8568
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-18 17:29:352楼 得分:5
    界面分辨率问题,要是不能实现,自己把程序调到相应的分辨率下面 ,程序从新编译一下,每个界面上的控件 都要作相应的调整,Delphi 好像没有处理适应不同分辨率的 比较好的方法
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • rainlovesea
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-18 17:38:043楼 得分:5
    UP
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gyk120
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    • 2

    发表于:2008-09-18 17:53:174楼 得分:100
    inplementation 
      const 
          ScreenWidth:  LongInt  =  1440;  {I  designed  my  form  in  1440*900  mode.} 
          ScreenHeight:  LongInt  =  900; 
       
      {$R  *.DFM} 
       
      procedure  TForm1.FormCreate(Sender:  TObject); 
      begin 
          scaled  :=  true; 
          if  (screen.width  <>  ScreenWidth)  then 
          begin 
              height  :=  longint(height)  *  longint(screen.height)  div  ScreenHeight; 
              width  :=  longint(width)  *  longint(screen.width)  div  ScreenWidth; 
              scaleBy(screen.width,  ScreenWidth); 
          end; 
      end; 
       
      下一步,要让每个子控制的字体改变到合适的大小: 
      type 
          TFooClass  =  class(TControl);  {  needed  to  get  at  protected  } 
                                                                    {  font  property  } 
       
      var 
          i:  integer; 
      begin 
          for  i  :=  ControlCount  -  1  downto  0  do 
              TFooClass(Controls[i]).Font.Size  := 
                      (NewFormWidth  div  OldFormWidth)  * 
                      TFooClass(Controls[i]).Font.Size; 
      end; 
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gwhdaxia
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-18 18:15:295楼 得分:0
    还有没更好的方法啊
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • trainbox
    • 等级:
    • 可用分等级:
    • 总技术分:
    • 总技术分排名:
    发表于:2008-09-19 16:18:006楼 得分:5
    控件的align属性设置一下
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    北京创新乐知广告有限公司 版权所有 京 ICP 证 070598 号
    世纪乐知(北京)网络技术有限公司 提供技术支持
    Copyright © 2000-2008, CSDN.NET, All Rights Reserved