首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 认证考试-> Adobe认证
用vb5.0设计能适应各种显示属性下的界面_visualbasic教程
作者:网友供稿 点击:0
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
----在设计一般应用软件时,总希望设计的软件,无论显示器分辨率设置是640X480,800X600还是1024X768,无论显示器设置是在大字体还是小字体软件都能正常运行,并且有美观一致的界面。本人在用VB5.0设计《英语集成训练系统V2.0》时,亦遇到这样的麻烦。下面解释克服这一问题的方法。

----一:使界面居中

----为了使界面元素能在各种显示分辨率下均有合理的布局,一种方法就是获取当前显示分辨率,然后根据这一分辨率计算界面各元素的位置和大小,并进行设置。这种方法虽然能解决界面元素布局问题,但需要知道每个元素的位置和大小,程序烦琐。

----我这里采用的方法是:首先设计一个具有极大化,无边界,无标题,无控制盒的窗体,然后在其上放置一个容器控件Picture,在Picture中再放置其它控件。在窗体Load事件中根据当前的显示分辨率居中Picture,从而实现了居中整个界面。具体代码如下:

PrivateSubForm_Load()
CallCenterControl(Picture1)
EndSub
PublicSubCenterControl(objAsObject)
Dimcx,cyAsSingle
cx=(Screen.Width/Screen.
TwipsPerPixelX-obj.Width)/2#
cy=(Screen.Height/Screen.
TwipsPerPixelY-obj.Height)/2#
obj.Left=cx
obj.Top=cy
EndSub

----二:使界面适应大字体与小字体

----Win95在创建控件时,会根据当前显示属性为大字体或小字体来作相应调整。尽管应用程序传送的参数(控件位置和尺寸)是一致的,但实际控件的位置和尺寸在这两种情形下并不一样。如果应用程序仅仅考虑一般小字体的情况,在大字体下界面则十分难看混乱,甚至无法操作。为解决这一问题,首先应了解当前显示器设置,这可通过系统注册表来获取。下面的程序采用了另一种方法:首先在一个映射模式为Pixel的窗体中放置一个控件,在显示属性为小字体的设计环境下首先看一下控件的初始位置x,y,然后在窗体的Load事件中计算出X和Y方向的放大比例xFac,yFac:

PrivateSubForm_Load()
xFac=400#/mmlhwnd.Left
yFac=400#/mmlhwnd.Top
EndSub

----其中,mmllhwnd为放置在窗体中的控件,初始的坐标为400,400。

----最后在各个需要调整界面的窗体Load事件中调用下列子程序,调整各控件的位置与大小:

PublicSubCorrectForm(fmAsForm)
DimCAsControl
ForEachCInfm.Controls
IfTypeOfCIsTimerThen
ElseIfTypeOfCIsCommonDialogThen
ElseIfTypeOfCIsLineThen
C.X1=C.X1*xFac
C.Y1=C.Y1*yFac
C.X2=C.X2*xFac
C.Y2=C.Y2*yFac
Else
C.Left=C.Left*xFac
C.Top=C.Top*yFac
IfTypeOfCIsSSCommandThen
C.Width=C.Width*xFac
C.Height=C.Height*yFac
C.FontSize=C.FontSize*xFac
ElseIfTypeOfCIsCommandButtonThen
C.Width=C.Width*xFac
C.Height=C.Height*yFac
C.FontSize=C.FontSize*xFac
ElseIfTypeOfCIsListBoxThen
C.Width=C.Width*xFac
C.Height=C.Height*yFac
C.FontSize=C.FontSize*xFac
ElseIfTypeOfCIsComboBoxThen
C.Width=C.Width*xFac
C.FontSize=C.FontSize*xFac
EndIf
EndIf
NextC
EndSub

----上述程序中仅列举了几个典型的控件,如果窗体中还有其它类型的控件,仿造上述程序加入对这些控件类型的处理即可。->


文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·Java开发工具配置 UltraEdit-JSP教程,Java技巧及代码
·遍历设备管理器的设备-.NET教程,评论及其它
·用正则表达式剔除文本中的HTML标记-ASP教程,正则表达式
·一个通用的DataGridTableStyle的做法-.NET教程,数据库应用
·java连接Oracle数据库-JSP教程,Java技巧及代码
·将XML存入关系数据库-JSP教程,数据库相关
·如何在Web页面上直接打开、编辑、创建Office文档-ASP教程,ASP应用
·asp之日期和时间函数示例-ASP教程,ASP应用
·ASP.Net Web Page深入探讨-ASP教程,ASP应用
·浅析Microsoft .net PetShop程序中的购物车和订单处理模块(Profile技术,异步MSMQ消息)-.NET教程,.NET Framework
最新文章
·fireworks 8绘制精致指南针图案_fireworks教程
·卸载多重引导系统中的windows vista操作系统_windows vista
·如何做到google adsense好收入的几点_网赚技巧
·百度主题推广和google adsense的综合比较_网赚技巧
·[新闻会客厅]孙雁:八零后的女闪客_站长访谈
·“流量交换型站点”访客黏度问题凸显_站长心得
·大唐社区站长经验谈社区运营_站长心得
·blog站点如何用rss搜索来推广_站长心得
·自我防护web站点和恶意链接的方法_站长心得
·网站投资你和我的20个自身检查(2)_站长心得
相关主题
  • 用vb5.0创建windows快捷方式_visualbasic教程
  • 用vb5.0从recordset中打印列表_visualbasic教程
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭