为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

VFP范例根据屏幕分辨率高速应用程序

2018-09-08 2页 doc 23KB 29阅读

用户头像

is_754577

暂无简介

举报
VFP范例根据屏幕分辨率高速应用程序根据屏幕分辨率高速应用程序 作者: 王守银 在使用VFP 6.0系统开发各类应用系统过程中,许多编程人员都遇到这样一个问题:由于受系统用户计算机硬件配置情况和系统开发要求的限制,一般情况下,系统表单设计是基于一定的计算机屏幕分辨率来确定位置和大小的,那么这个应用程序在对应的计算机屏幕分辨率下显示是正常的,但如果运行这个表单在不同的屏幕分辨率下,显示可能就不是所希望的那样,这就造成了编写的应用系统通用性不强。解决这个问题当然也可以通过在开发过程中设计在计算机不同屏幕分辨率下使用的表单,运行时根据当前计算机的分辨率调用不同的表单,...
VFP范例根据屏幕分辨率高速应用程序
根据屏幕分辨率高速应用程序 作者: 王守银 在使用VFP 6.0系统开发各类应用系统过程中,许多编程人员都遇到这样一个问题:由于受系统用户计算机硬件配置情况和系统开发要求的限制,一般情况下,系统表单是基于一定的计算机屏幕分辨率来确定位置和大小的,那么这个应用程序在对应的计算机屏幕分辨率下显示是正常的,但如果运行这个表单在不同的屏幕分辨率下,显示可能就不是所希望的那样,这就造成了编写的应用系统通用性不强。解决这个问题当然也可以通过在开发过程中设计在计算机不同屏幕分辨率下使用的表单,运行时根据当前计算机的分辨率调用不同的表单,这样虽然可以解决系统表单的显示问题,但也大大增加了系统开发的强度和工作量,在实际应用中并不适用。其实要解决这个问题可以通过根据当前计算机屏幕的分辨率动态调整表单大小和表单中各控件的位置和大小,来实现应用程序屏幕分辨率的自适应,下面介绍这种功能实现的方法。 1.如在计算机屏幕分辨率不到640×480情况下创建一个新表单,表单中添加一些常用控件如文本框,命令按扭和标签等到表单中; 2.将以下代码放入表单的Init事件和所有的容器控件中Init事件(如容器、页框中的页等)中: Local lnHeight,lnWidth,lnHeightdiff,lnWidthdiff YH=480 && 原分辨率下的高度 YW=640 && 原分辨率下的宽度 HBL=0 && 保存不同分辨率的变量 WBL=0 && 保存不同宽度的变量 IF SYSMETRIC(2)<>YH && 如果目前不是运行于640×480分辨率下,获得当前分辩率与设计分辨率高和宽的比例值 HBL=SYSMETRIC(2)/YH WBL=SYSMETRIC(1)/YW &&如果是容器对象或其它非表单对象,需要注释掉下面这四行代码 THIS.Height=THIS.height*HBL THIS.Width=THIS.Width*WBL THIS.Top=THIS.Top*HBL THIS.Left=THIS.Left*WBL &&下面代码是遍历所属各对象,重新调整各对象的大小和位置 FOR i = 1 to THIS.ControlCount WITH THIS.controls(i) .Height=.Height*HBL .Width=.Width*WBL .Top=.Top*HBL .Left=.Left*WBL &&如果控件拥有FontSize属性,则调整修改各对象中的FontSize属性值来重新确定对象字体大小。 &&值得注意的是在一些较高分辨率下,计算机屏幕会在一定程序下改变字体,因此要对系统进行测试 IF TYPE("".FontSize"") # ""U"" .FontSize=.Fontsize*((.5*WBL)+(.5*HBL)) ENDIF ENDWITH ENDFOR ENDIF THISFORM.Refresh 3.保存这个表单,调整计算机屏幕分辨率,在不同分辨率下运行这个表单,我们能看到,现在的这个表单会根据分辨率的不同自动调整对象的大小和位置,使得设计的表单不会因为分辨率的改变而发生变化,这样就实现了应用程序表单对不同分辨率的自适应。 以上介绍的是一种实现应用程序表单适应不同屏幕分辨率的方法,根据这个原理即可编出更加实用的应用程序,有兴趣的读者不妨一试。
/
本文档为【VFP范例根据屏幕分辨率高速应用程序】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索