VB对象的Width Height和ScaleWidth,ScaleHeight属性有何区别?
VB对象的Width,Height和ScaleWidth,ScaleHeight属性区别为:对象不同、影响不同、基点不同。一、对象不同1、Width,Height属性:Width,Height属性是控件外部的宽度和高度。2、ScaleWidth,ScaleHeight属性:ScaleWidth,ScaleHeight属性是控件内部的宽度和高度。二、影响不同1、Width,Height属性:Width,Height属性受到控件所在的父容器控件的ScaleMode模式影响。2、ScaleWidth,ScaleHeight属性:ScaleWidth,ScaleHeight属性受到控件本身的ScaleMode模式影响。三、基点不同1、Width,Height属性:Width,Height属性的坐标系以窗体的左上角为基点。2、ScaleWidth,ScaleHeight属性:ScaleWidth,ScaleHeight属性的坐标系以控件左上角的左上角为基点。
vb关于自定义坐标的问题,求大神们来解答一下。
所谓自定义坐标,就是由自己来设定坐标的原点、坐标轴的方向、坐标轴的单位等。
VB的默认坐标系统是以窗体的左上角为坐标原点、x轴向右、y轴向下、单位为缇。
如果要使用数学中常用的四象限的坐标系统则是以窗体中心为原点,x轴向右、y轴向上,单位最好为像素。
Form1.Scale
(0,
500)
-
(500,
0)
的意思就是窗体Form1的左上角坐标为(0,
500),右下角坐标为(500,
0),也就是说右上角的坐标为(500,
500),左下角的坐标为(0,
0),从中可看出,这个自定义坐标系统的原点在窗体的左下角,x轴向右,y轴向上,x轴的单位是ScaleWidth/500,y轴的单位是ScaleHeight/500(也就是说x轴的1与y轴的1是不相等的,除非窗体的内部区域是正方形)。然后后面的绘图命令就会根据这个新的坐标系统来工作了,比如你在(0,
0)的位置用PSet画个点,它会画在左下角,而不是左上角!!!
你所说的窗体的坐标系统是这个窗体相对于操作系统而言的(即对外的),而窗体的内部坐标系统则是相对于其内部的控件以及各种绘图命令而言的(即对内的)。就好比你的房子位于北纬xxx度,东经xxx度,而你房间里的沙发距离墙壁xx厘米,这是两套完全不相关的坐标系统好不好?!
VB程序代码求指教
我说说思路:
一,解决输入并保存信息的功能:
因为,要有输入信息的功能,所以要解决输入并保存信息的功能,有两种方法;
1,采用VBA,在WORD或者EXCEL里。
2,你自己编写文本编辑器。
二,按照你的要求:
1,程序要有设置时间的功能。
2,每次输入信息完毕,进行文件保存。
3,文件格式分为上下两大块,中间用设置的时间突出显示作为分隔;
4,保存的时候,首先判断当天是否已经有保存的文件,如果有就打开现有文件,如果没有,保存为当日新文件。
如果已经有文件,打开文件,并判断时间,按照你说的时间节点,如果时间在规定时间前,那么新的内容输入在原内容后;如果过了规定时间,那么打开文件后,自动在文件结束处,增加一行用规定的时间作为内容的分隔行,并另起一行,编辑输入新的数据。
请教VB高手Picture1.Width 和 Picture1.ScaleWidth有什么区别啊!!
返回控件中所包含位图的高度和宽度(按像素)。这些属性设计时不可用,运行时只读。
语法
[form.]PictureClip.Width
说明
这些属性仅当控件包含位图时有效。
在设计时用 Visual Basic 中的属性工作表能将位图加载到 PictureClip 控件中,在运行时用 LoadPicture 函数也能将位图加载到 PictureClip 控件中。
数据类型
Integer
当使用图形方法或调整控件位置时,返回或设置对象内部的水平 (ScaleWidth) 或垂直 (ScaleHeight) 度量单位。对于 MDIForm 对象,在设计时 是不可用的,并且在运行时是只读的。
语法
object.ScaleWidth [= value]
ScaleHeight 和 ScaleWidth 属性的语法包含下面部分:
部分 描述
Object 对象表达式,其值是“应用于”列表中的一个对象。
Value 一个用来指定水平或垂直度量的数值表达式。
说明
能够使用这些属性来为绘图或打印创建一个自定义的坐标比例尺。例如,语句 ScaleHeight = 100 将改变窗体实际内部高度的度量单位。取代当前高度为 n 个单位(缇、像素、...),高度将变为 100 个自定义单位。因而,50 个单位的距离就是对象的高度/宽度的一半,101 个单位的距离将超出对象 1 个单位。
为了定义基于标准度量单位的比例尺,例如缇、磅、像素、字符、英寸、毫米、或厘米应使用 ScaleMode 属性。
这些属性设置为正值将使坐标从上向下及从左向右增加。它们设置为负值将使坐标从下向上及从右向左增加。
这些属性和相关的 ScaleLeft 与 ScaleTop 属性的使用,可以建立起一个完全的带有正、负坐标的坐标系统。所有这四个 Scale 属性与 ScaleMode 属性按下面的方式进行交互作用:
把其它任何 Scale 属性设置为任何值都将使 ScaleMode 自动地设置为 0。ScaleMode 等于 0 是用户定义。
把 ScaleMode 设置为一个大于 0 的数,将使 ScaleHeight 和 ScaleWidth 的度量单位发生改变,并将 ScaleLeft 和 ScaleTop 设置为 0。另外,CurrentX 和 CurrentY 的设置值将发生改变以反映当前点的新坐标。
也可以在语句中使用 Scale 方法设置 ScaleHeight、ScaleWidth、ScaleLeft 和 ScaleTop 属性。
注意 ScaleHeight 和 ScaleWidth 属性与 Height 和 Width 属性是不一样的。
对于 MDIForm 对象,ScaleHeight 和 ScaleWidth 仅涉及窗体中未被 PictureBox 控件覆盖的区域。在 MDIForm 的 Resize 事件中应避免使用这些属性调整 PictureBox 的大小。