




免费预览已结束,剩余1页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB的座标系统.net 电脑资料 这里我们来看一下ScaleLeft/Top/Height/Width ScaleX ScaleY TextHeight TextWidth的一些特性与关连, 这里我们来看一下ScaleLeft/Top/Height/Width ScaleX ScaleY TextHeight TextWidth的一些特性与关连。 所谓的ScaleLeft ScaleTop ScaleTop ScaleWidth指的是Window中的Client Area即可以画图、放元件的区域,像Title区就不在Client Area的范围。如果我们设定ScaleMode成不为0的数值,如设定ScaleMode = 3 (VBPixels)那麽就代表这区域的度量是以Pixels为单位,而ScaleTop =ScaleLeft = 0,即原点在左上角。 VB提供了一个很好用的座标系统转换,即ScaleMode, ScaleLeft ScaleTop ScaleTopScaleWidth。我个人不喜欢VB内定的ScaleMode = VbTwips,我爱 ScaleMode=VBPixels原因是Window系统的度量单位是使用Pixels而不是Twips。 如果我们想在一个画面上画上座标,那麽如何才能不管Window的大小,而只管我们所关注的座标呢?假设我们想做一个座标,原点在Form的左下角(0,0)而右上角座标是(100,100), 那我们只要对Form如此设 ScaleTop = 100 ScaleWidth = 100 ScaleLeft = 0 ScaleHeight = -100, 那就成了,这时候,如果我们去查一下Form的MouseDown的X, Y值,会发现它的值已变成落在0-100之间了。(此时的ScaleMode = 自动变Vbuser)更有趣的是用来计算字串高、宽的TextHeight/TextWidth也变成以座标0-100的方式来 表现了。 例如说, .CurrentX = 10 .CurrentY = 10 Form1.Print HaHa, 这时会见到於Form左下方会出现HaHa,它的位置便是於座标(10,10)之处,所以了,如果Form变大,Form1.Print HaHa所显示之位置也会自动更动不像其他的ScaleMode(如vbPixel),会在固定的绝对单位处显示HaHa。然而,有时候我们会想要以绝对单位来做一些事,例如:我们希望在左边算来第三个Pixels处来显示东西,的确,数学好的人可以自己转换,而像我数学不好的人,可以用ScaleX/ScaleY来做,像方才的例子,左边算来第三点(Pixels)相对应於新的座标的宽度便是Form1.ScaleX(3,vbPixels, vbUser), 再来一个有趣的问题,如果有人见过一篇文章,用API来任意角度旋转字型,那篇文章中字型旋转之後印在Form上,如果我们转90度,而且於(50,50)处印字,会发现它是从(50,50)处往萤幕上方写出字,如果我们想在座标(50,50)处当作字串的结束之地,那该如何呢,我会计算出该字串的长度(例如:长度20),而後在(50,70)处印字,那困难点变成如何得知该字串长度,第一个反应是.TextWidth,不过别忘了,TextWidth它随着ScaleMode的更动而变,宽度x1者,如果垂直Print,而便假设其高度也是x1是不对的(如:ScaleTop = 0, ScaleHeight = 10, ScaleLeft = 0, ScaleWidth =20,而宽度=10的字串,垂直印的高度应是不会是10,若X Y轴单位不同时也不一定是5(如果字大小不变的话)。 那使用Pixels来做二者的转换,Pixels一个点便是一个点,所以X,Y轴的单位是相同的,当然,使用Twips也可以,只是如果中间有用上API,人家大多以Pixels为单位。 With Form1 ldScaleLeft = .ScaleLeft ldScaleTop = .ScaleTop ldScaleWidth = .ScaleWidth ldScaleHeight = .ScaleHeight ldScaleMode = .ScaleMode .ScaleMode = vbPixels txtLen = .TextWidth(mystring) myString是待旋转的字串 if OldScaleMode vbUser then .ScaleMode = oldScaleMode else .ScaleLeft = OldScaleLeft .ScaleTop = OldScaleTop .ScaleWidth = OldScaleWidth .ScaleHeight = OldScaleHeight E
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电梯双方安全协议书
- 离婚车辆更名协议书
- 离岗进修培训协议书
- 直接投资入股协议书
- 监控布线合同协议书
- 烟台买房定金协议书
- 电梯销售配件协议书
- 生产用车购买协议书
- 纯化农庄转让协议书
- 电梯广告出租协议书
- 肿瘤专科进修汇报护理
- 第2课 《 手绘线条图像-物象的多视角表达》(教学设计)-2023-2024学年人美版初中美术八年级下册
- 肾上腺皮质功能减退护理
- 村干部笔试题库及答案
- 学校食堂安全风险管控清单
- 高低压柜常见故障及检修培训
- 供应商分级制度
- 安徽省C20教育联盟2025年九年级中考“功夫”卷(一)数学(原卷版+解析版)
- 家校社协同育人促进学生核心素养发展的实践研究范文
- 第7课《我们有新玩法》第2课时《我们一起来创造》课件 道德与法治二年级下册 统编版
- 医院胸痛中心应知应会
评论
0/150
提交评论