scalemode
我是一个VB初学者,最近苦恼于VB的窗体和控件的scalemode问题,VB里默认的ScaleMode是twip,而往往我们希望它是pixel,虽然在属性面板里面能够将ScaleMode改为"3-Pixel",但是我发现在程序中返回某个窗体或控件的属性时还是返回为很大的twips值,比如有一个picturebox控件picMyPic,那么假如在程序中用另一个变量iWidth来接收控件的宽度:iWidth = picMyPic.Width,则它还是返回一个很大的twip值,比如返回6100,而控件的宽度大概只有两百多像素。
所以请问有没有办法,让它返回一个以像素为单位的数值?twip和pixel之间又是如何转换的?
设置form的scalemode=3只能使
picMyPic.scaleWidth为象素
picMyPic.Width当然为Twip,因为你没有把picMyPic.salemode=3
ScaleX、ScaleY 方法
用以将 Form,PictureBox 或 printer 的宽度或高度值从一种 ScaleMode 属性的度量单位转换到另一种。不支持命名参数。
语法
object.ScaleX (width, fromscale, toscale)
object.ScaleY (height, fromscale, toscale)
ScaleX 和 ScaleY 方法的语法包含如下部分:
部分 描述
object 可选的。一个对象表达式,其值为“应用于”列表中的一个对象。如果省略 object,则带有焦点的 Form 对象缺省为 object。
width 必需的。为 object 指定被转换的度量单位的数量。
height 必需的。为 object 指定被转换的度量单位的数量。
fromscale 可选的。一个常数或数值,按照下列设置中的描述,指定 object 的 width 或 height 从哪一种坐标系统转换。fromscale 可取的数值与 ScaleMode 属性的数值加上 HiMetric 的新数值相同。
toscale 可选的。一个常数或数值,按照下列“设置值”中的描述,指定 object 的 width 或 height 转换到哪一种坐标系统。toscale 可取的数值与 ScaleMode 属性的数值加上 HiMetric 的新数值相同。
设置值
用于 fromscale 和 toscale 设置值有:
常数 值 描述
vbUser 0 用户定义:指示 object 的宽度和高度设置为自定义值。
vbTwips 1 缇(每逻辑英寸 1440 缇;每逻辑厘米 567 缇)。
vbPoints 2 磅(每逻辑英寸 72 点)。
vbPixels 3 像素 (显示器或打印机分辨率的最小单位)。
vbCharacters 4 字符(水平 = 每单位 120 缇,垂直 = 每单位 240 缇)。
vbInches 5 英寸
vbMillimeters 6 毫米
vbCentimeters 7 厘米
vbHimetric 8 HiMetric。如果省略 fromscale,则 HiMetric 为缺省值。
vbContainerPosition 9 决定控件位置。
vbcontainerSize 10 决定控件大小。
说明
ScaleX 和 ScaleY 方法按 fromscale 指定的度量单位取值(width 或 height),并将它转换为 toscale 指定的度量单位下相应的值。
也可以结合 PaintPicture 方法使用 ScaleX 和 ScaleY。
15twip=1pixel
实际上可以用Screen.TwipsPerPixelX和Screen.TwipsPerPixelY作为系数来转换
PixelX = TwipX/Screen.TwipsPerPixelX
PixelY = TwipY/Screen.TwipsPerPixelY
相关阅读
参考博文: 东邪西毒.加深印象,以备查用。VBoxManage 命令行安装虚拟机1、环境准备2、安装2.1 安装VritualBox2.2 安装扩展包3、创
实现密件抄送方式有很多种,多数的方法为设置Outlook规则。这里讲尝试使用VBA来实现此功能。1、打开Outlook 2010 ,使用快捷键 ALT +
VB程序设计教程(第四版) 龚沛曾 课后习题答案 目录 第一章课后答案 第二章课后答案 第三章课后答案 第四章课后答案 第五章课后
1、接触缘由:由于实习工作项目需求,需要用到Excel VBA,作为一个技术小白当然是指哪儿打哪儿,开启一番自学旅程。2、VBA第一印象Excel
什么是VB.net Visual Basic.NET是基于微软.NET Framework之上的面向对象的编程语言。可以看做是VB在.NET Framework平台上的升级