当前位置:编程学习 > VB >>

为什么都一个窗体,me.Height和me.ScaleHeight的值差距非常大

me.Width ,me.Height,me.ScaleWidth ,me.ScaleHeight  
 21720         13110         21540         1200 

问题如下:
(1)Width和ScaleWidth 值不一样
(2)Height,ScaleHeight 值不一样,且差距这么大?
(3)如何在程序运行期间,改变其上PICTURE控件的高度和宽度。
--------------------编程问答-------------------- 这个是和ScaleMode属性相关的 --------------------编程问答-------------------- 比如你一个窗体,在ScaleMode=1时:Width=4800,ScaleWidth=4680  相差120
通过手动修改:ScaleMode=3时,Width=4800,ScaleWidth=4680/15=312

通过以上一对比,你就应该明白了,这是显示单位不同所致,而现实单位是不会影响Width属性的,只会影响窗体现实范围内的值 --------------------编程问答-------------------- width,height按Twip为单位
scalewidth,scaleheight和scalemode有关

有以下的关系:
scalewidth=scalex(width,1,scalemode)
scaleheight=scaley(height,1,scalemode)

或者:
width=scalex(scalewidth,scalemode,1)
height=scaley(scaleheight,scalemode,1)

--------------------编程问答-------------------- 抓住2个关系,twip是物理尺寸,中文叫缇,1英寸=1440缇。
显示器分辩率是像素为单位的,在显示属性中可修改两者对应关系,VB6读取时是读Screen.TwipsPerPixelX
补充:VB ,  基础类
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,