刘昊然胸肌:Visual Basic2自适应窗体设计经验-开发频道-VB-天极网

来源:百度文库 编辑:中财网 时间:2024/05/01 16:41:02
  #menulist {height:20px;border-bottom:#69708F 1px solid;width:983px;line-height:20px;margin:12px auto 0 auto;}#menulist a {margin:0 5px;color:#000;}#tophead {margin:0px auto;padding:6px 0;height:90px;width:983px;}#imglogo {float:left;margin-right:6px;}#topad {float:left;width:500px;}#topsearch {float:left;margin:0 3px 0 9px;}#searchzz {width:95px;height:19px;border:7F9DB9 1px solid;margin-right:2px;padding-top:5px;}#search_btn {width:63px;border:#999 1px solid;height:29px;}#toparea {float:left;width:165px;margin-top:8px;}#leftarea {width:120px;float:left;}.topbd {border:#CC4509 1px solid; padding:3px; background:#FCFFE8;line-height:21px;}#leftarea a {margin:0 2px 0 3px;color:#000;}#rightarea {width:24px;float:right;}#rightarea a {color:#000;}#toprightlist{float:right;width:172px;height:88px;white-space:nowrap;overflow:hidden; border:1px #AFC4D7 solid;line-height:22px;}#toprightlist li{list-style-position:outside;}#toprightlist li a {color:#000;}天极首页|产品报价|行情|手机|数码|笔记本|台式机|DIY|外设|网络|服务器|GPS|数字家庭|软件|游戏|壁纸|群乐|博客|下载|VISTA|奥运|BBS
北京上海广州深圳
南京太原沈阳西安 用户
登录
  • ·暑促生力军学生本导购
  • ·近期超值笔记本抢先报
  • ·E3 2009:热辣ShowGirls
  • ·30000元雷人硬件配置
  • 您现在的位置:天极网 > 开发频道 > Visual Basic自适应窗体设计经验全文评论

    Visual Basic自适应窗体设计经验

    2004-02-26 09:42作者:务实出处:yesky责任编辑:方舟  所以根据上面介绍的原理,在窗体被缩放之后,只要按照下面的关系来设置控件的Left和Top属性值即可。

    调整后控件的Left属性值=(控件原Left属性值/窗体原Left属性值)*窗体.ScaleWidth;
    调整后控件的Top属性值=(控件原Top属性值/窗体原Top属性值)*窗体.ScaleHeight;

      3、实现按窗体缩放比例调整控件大小及位置的具体方法

      我们知道,Resize事件是窗体响应的一个事件。当窗体第一次显示或当窗体的状态被改变时(如窗体被最大化、最小化或被还原时)该事件发生。所以只要将对控件大小、位置的调整代码写入窗体的Resize事件中便可达到目的。具体可在窗体的Resize事件过程中使用对象的Move方法:

    Private Sub Form_Resize()
     Object.move Newleft, Newtop, NewWidth, NewHeight
    End Sub
      其中:

      Object是需要调整大小和位置的任意一个控件的名称;

      NewLeft, NewTop, NewWidth与NewHeight分别是窗体缩放后控件应有的新的Left, Top,Width与Height的属性值,它们确定了当窗体被缩放后控件的大小和位置。NewWidth, NewHeight的值可由1中的两个公式得到:NewLeft, NewTop的值可由2中的两个公式得到。

      4、窗体的多控件的处理

      当一个窗体中有多个控件时,如果对每一个控件都用上述方法处理显然比较繁琐。为此,以下给出一个通过编程来处理窗体内多个控件的一般方法(注意:如果窗体内有不可见的控件,则应该在程序中加入相应的代码以避免检查这些控件的尺寸,否则将出错)。

      (1)自定义一个数据类型

      在标准模块的声明段写入:

    Type cp
     wp As Single
     hp As Single
     tp As Single
     lp As Single
    End Type
      (2)定义一个窗体级数组

      在窗体模块的声明段写入:

    Dim ap() As cp
      (3)定义一个通用过程

    Sub ai()
     Dim i As Integer
     For i=0 To Controls.Count-1
      With ap(i)
       .wp=Controls(i).Width/Form1.ScaleWidth
       .hp=Controls(i).Height/Form1.ScaeHeight
       .lp=Controls(i).Left/Form1.DcaleWidth
       .tp=COntrols(i),Top/Form1.ScaleHeight
      End With
     Next i
    End Sub
      (4)在窗体的Load事件过程中写入代码:

    Private Sub Form_Load()
     ReDim ap (0 To Controls.Count-1)
     ai
    End Sub
      (5)在窗体的Resize事件过程中写入代码:

    Private Sub Form_Resize()
     Dim i As Integer
    For i=0 To Controls.Count-1
      以下三行需在一行内写完

     Controls(i).Move ap(i).1p * Form1.ScaleWidth,
     ap(i).tp * Form1.ScaleHeight,ap(i).WP*Form1.ScaleWidth,
     ap(i).hp * Form1.ScaleHeight
     Next i
    End Sub
      不难看出,上面的代码具有普遍意义:即对于任何VB程序,只要将上面给出的代码按照要求写入程序中,则无论该VB程序的一个窗体中具有多少控件,均能使窗体内的控件自适应于窗体尺寸缩放,从而解决了控件与窗体在尺寸和位置两方面的比例失调问题。

     

    共2页。 9 1 2

     共2页。 首页 上一页 1 2
    天极流量联盟免费换  我顶一下 我要挑错 收藏到天极收藏夹 复制链接发给好友 加入收藏 打印 关闭  #wordNum{font-size:12px;float:right;padding-right:10px}.noteBoxStyle {line-height:30px;background:#C1D3FB;border:1px solid #999;text-align:center;font-size:16px;color:#000;filter:Alpha(opacity=100);-moz-opacity:1;opacity:1;}#comments {width:99%}#comments .viewmore {padding-top:16px;margin-bottom:16px;text-align:right}#comments .viewmore a{color:#000;text-decoration:underline;font-size:12px}#comments .titleRow {width:100%;background:#C1D3FB;height:30px;line-height:30px;margin-bottom:10px}#comments .titleRow b{font-size:14px;padding-left:10px;float:left}#comments .titleRow a:link , .titleRow a:visited{float:right;font-size:12px;padding-right:10px;text-decoration:underline;color:#000}#comments .titleRow a:hover {text-decoration:none}#comments #commentList ,#comments #commentList dt ,#comments #commentList dd {margin:0;padding:0}#comments #commentList {width:97%;padding:10px 0 15px 0;font-size:12px;background:url(http://image.yesky.com/TLimages/images/loading.gif) no-repeat center center}#comments #commentList dt {height:28px;line-height:28px}#comments #commentList dt span {float:left}#comments #commentList dt b {float:right;font-weight:normal;color:#999;font-size:11px;font-family:Arial,Verdana}#comments #commentList dd {overflow:hidden;clear:both;text-align:left;width:100%;padding-bottom:5px;border-bottom:1px dashed #ccc;line-height:20px;text-indent:2em;margin-bottom:5px;word-break:break-all;word-wrap:break-word}#comments #postForm {margin-top:-5px}#comments #postForm textarea#content {cursor:text;padding:2px 1px;width:99%;height:75px;vertical-align:top;font-size:14px;border:1px solid #A3B9CD;background:url(http://image.yesky.com/TLimages/images/yesky_alpha_logo.gif) no-repeat center center #fff;font-size:13px;white-space:pre}#comments #postForm .fTtile {float:left;font-size:12px;margin-top:13px;font-weight:bold;height:18px;line-height:18px;}#comments #postForm .nickName {float:left;margin-top:10px;width:112px;height:18px;border:1px solid #A3B9CD;line-height:18px;font-size:12px}#comments #postForm .submit {float:left;border:1px solid #A3B9CD;height:22px;padding:1px 2px;margin:10px 0 0 10px;font-size:12px;background:#C8D8FB;color:#000}网友评论 共有 0 条评论
    欢迎评论!
    发表评论您还能输入300字
    昵称:
    恭喜,信息提交成功!"); } //-->
    网页 产品 图片 下载
    相关搜索: 相关文章及软件
      ·用VB判断网页文件是否在IE缓存中
      ·向Visual Basic程序员介绍泛型
      ·VB程序错误处理方法小结
      ·VB中SQL合计函数的使用
      ·VB中数据集合对象的应用
      ·VB编程中钩子的实现及应用
    关注此文读者还看过
    "); 奥运嘉年华·[活动]拍出我最爱 雷柏无线鼠“拍对”有奖
    ·全球最具创意的50张图片(精选)
    ·比特网改革开放30年大型专题
    ·购买本本十大必杀技
    ·取消十一长假,您同意吗?
    ·“三星眼力大比拼”第二部手机 花落成都
    ·为52PK投票赢取心动大奖
    ·世界真奇妙 怪异的世界纪录
    ·三星体验活动“打出你的财富梦”大奖等你拿
    ·今后您还会不会买三鹿奶粉?
    热门关注特别推荐网友关注软件下载娱乐下载驱动下载文章排行本周本月最近更新1
    2345678910
    • 800万像素双向滑盖 诺基亚N86 春节特卖
    • 黑莓挡子弹 一女孩捡回性命
    • 性价比首选 佳能IXUS 95 IS 特价促销迎财神
    1
    2345678910
    • 《孔子》多普达T8388麒麟 新年南京报价4888
    • 动感时尚酷族之选 三星S3650 特价1200元
    • 宏基F1 新款智能手机表现强劲 南京报价2850
    • 800万像素双向滑盖 诺基亚N86 春节特卖
    • 琦基U1000 超大屏幕智能机 南京报价2080
    • 黑莓9000 新年新价格 0通话 南京报价2850
    • 数十商家天涯“练摊儿”卖年货
    • 疑似诺基亚N98旗舰新机首张谍照曝光
    • 朱骏嚣张回归网游业务 称魔兽终归会失去
    • 三星发布首款采用Bada系统的智能手机
    12345678910
    • 廉价的首选 台电K3电子书阅读器曝光
    • 迎春节 惠普CQ41-206TX 直降300元 岂容错过
    • 新春大促销 戴尔酷睿i3笔记本1464 仅5200元
    • 诺基亚5230 南京报价1299元 音乐手机一路走
    • 联想G455A笔记本重磅发布 活动现场热烈火爆
    • 中国的红 Thinkpad X100e上网本 特惠3600元
    • 揭露戒网瘾弥天骗局,水妖三战陶宏开
    • 酷睿i3独显 惠普CQ41-204TX 抢手货 推荐
    • LG与HTC推两款Windows Mobile 7智能手机
    • ThinkPad Edge系列新品 049322UC 新款促销
    • 1 数十商家天涯“练摊儿”卖年货
    • 2 三网融合出细则:IP电话获合法身份
    • 3 琦基U1000 超大屏幕智能机 南京报价2080
    • 4 中恒 DEC G11 灵龙 灵动上市 南京报价16699
    • 5 《孔子》多普达T8388麒麟 新年南京报价4888
    • 6 多普达T5399 3G时代 智能机 南京报价4180
    • 7 黑莓9000 新年新价格 0通话 南京报价2850
    • 8 宏基F1 新款智能手机表现强劲 南京报价2850
    • 9 灯泡5000小时 三菱HC77-10S投影机破万元
    • 10 NVIDIA:笔记本外置显卡大有前途
    -热点推荐

    • 京华JWM-4301 绝对能给人以心灵震撼效果

    • 挑战小编球技 整合主板实测FIFA09之790GX

    • 挑战小编球技 整合主板实测PES2009之790GX

    • 挑战小编球技 整合主板实测FIFA09之MCP7A
    #c_yfloor {height:38px;line-height:38px;background:#242021;text-align:center;width:983px;margin:auto;color:#FFF;clear:both;} #c_yfloor a:link,#c_yfloor a:visited{text-decoration:underline;color:#FFF;margin:0 5px;} #c_yfloor dd a:active,#c_yfloor a:hover{text-decoration:none;color:#F00;} #c_ybq {width:983px;margin:12px auto;clear:both;} #c_ybgl {float:left;margin:0 30px;} #c_ybgc {float:left;margin:12px 30px 0 0;font-family:"Arial";line-height:18px;} #c_ybgc a {color:#000;text-decoration:underline;} #c_ybgr {float:left;} #c_yzq {width:983px;margin:6px auto;background:#F2F8FD;height:26px;line-height:26px;text-align:center;clear:both;} #c_yzq span {color:#999;} #c_yzq a {color:#000;margin:0 2px;} 关于我们|About us|网站律师|天极服务|电子杂志|RSS订阅|加入我们|网站地图Copyright (C) 1999-2009 Chinabyte.com, All Rights Reserved 版权所有 天极网络
    商务联系、网站内容、合作建议:010-82657868 023-63659988
    版权声明 在线提交意见反馈 渝ICP证B2-20030003号 天极传媒:天极网|比特网|IT专家网|52PK游戏网|IT分众