VB当中的坐标系是怎么样定的,一个控件的具体所在位置是怎么样定下来的 窗口的客户区左上角为坐标原点。即X=0 Y=0控件的位置是其在父控件的相对位置。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 由于在visual basic系统中有多种坐标定义,容易使初学者混淆,本文将 详细总结vb的坐标系统的一些基本概念,并提供坐标定义的详细方法: visual basic 坐标系统概述: visual basic 的坐标系统是指在屏幕(screen)、窗体(form)、容器 (container)上定义的表示图形对象位置的平面二维格线,一般采用数对(x,y) 的形式定位。其中,x 值是沿 x 轴点的位置,最左端是缺省位置 0。Y 值是沿 y 轴点的位置,最上端是缺省位置 0。 在visual basic坐标系中,沿坐标轴定义位置的测量单位,统称为刻度, 坐标系统的每个轴都有自己的刻度。坐标轴的方向、起点和刻度都是可变的,在 后面的叙述中,将讨论如何改变这些定义。 如何创建坐标系统: 创建图形对象的坐标系统,一般有以下几种方法: 1、使用系统缺省定义: 在系统缺省状态下,visual basic使用twips坐标系,以’缇’为单位(1缇 的长度等于1/1440英寸;1/567厘米;1/20磅)。应当注意的是:这些值指示的是 图形对象打印尺寸的大小。而在计算机屏幕上的物理距离则根据监视器的大小及 分辨率的变化而变化。 2、选择系统标准刻度定义: 除了缺省的twips坐标系外,用户还可以通过对象的scalemode属性来设置其 它的坐标刻度:(共有8种设置),现将这些设置列表如下: scalemode值 表示 说明 0 user 用户自定义 1 twip 缇,系统缺省设置 2 point 磅,每英寸约为72磅 3 pixel 像素,像素是监视器或打印机分率的最小单位。 每英寸里像素的数目由系统设备的分辨率决定。 4 character 字符,打印时,一个字符高 1/6 英寸,宽1/12 英寸 5 inch 英寸,每英寸为2.54厘米 6 millimeter 毫米 7 centimeter 厘米 在上述设置值中,除了 0 和 3以外,其它所有模式都是打印机所打印的单 位长度。例如,某对象长为4个单位,当 scalemode 设为 5 时,打印时就是4英 寸长。在程序中设定scalemode值的代码如下: '设窗体的刻度单位为厘米。 Scalemode = 7 '设 picture1 的刻度单位为像素。 Picture1.Scalemode = 3 3、创建自定义坐标系统: 当scalemode=0时,即为用户自定义模式,可采用设置对象的相应属性,来创 建所需的坐标系统,这些属性是: scaleleft: 设置对象左边距值 scaletop: 设置对象上边距值 scalewidth: 设置对象宽度 scaleheight: 设置对象高度 下面给出如下设置代码: scaleleft=100 scaletop=100 scalewidth=300 scaleheight=200 picture1.scaleleft=50 picture1.scaletop=50 则所定义的坐标系如下图所示: scaletop=100 picture1.scaleleft=50 以上代码定义窗体左上角坐标为(100,100),定义窗体内图形对象 picture1距窗体左边距离为50,上边距离为50。Scalewidth 和 scaleheight 语句定义窗体内部宽度的 1/300 为水平坐标单位;当前窗体内部高度的 1/200 为垂直坐标单位。如果窗体的大小以后被调整,这些单位保持原状。也就是说: scalewidth 和 scaleheight 是按照对象的内部尺寸来定义单位的,并且这些 尺寸不包括边框厚度或菜单标题的高度。Scalewidth 和 scaleheight 是指对 象内的可用空间的大小。它们决定了对象本身的坐标系统。这有别于内部尺寸 和外部尺寸(由 width 和 height属性指定)定义,width 和 height 总是按 照容器的坐标系统来表示。另外以上刻度属性都可包括分数,也可是负数。如 果将 scalewidth 和 scaleheight 属性设置值为负数即改变坐标系统的方向。 4.使用scale方法定义坐标系统: 一个更简洁的改变坐标系统的途径是使用 scale 方法。定义形式如下: [object.]scale (x1, y1) – (x2, y2) x1 和 y1 的值,决定了 scaleleft 和 scaletop 属性的设置值。X2-x1的 差值和y2-y1的差值,分别决定了 scalewidth 和 scaleheight 属性的设置值。 若指定 x1 > x2 或 y1 > y2 的值,与设置 scalewidth 或 scaleheight 为负 值的效果相同。例如:设定窗体坐标系统如下: scale (100, 100)-(200, 200) 该语句定义等同于以下属性设置: scaletop=100:scaleleft=100:scalewidth=100:scaleheight=100 如何恢复缺省坐标系统: 在定义了其它坐标系后,如果需要将坐标系统恢复为缺省的twips坐标系, 可以使用不含参数的scale方法,如语句: picture1.scale 将图形对象的坐标系统恢复为缺省,其左上角坐标为(0,0)。 非常感谢上边两位对我的问题的精辟解释,可我设的分太少了,实在不好意思,下一次一定多设点儿,请见谅,呵呵 请问有没有可以解析HTTP协议的控件或DLL? VB数据库小程序 错误 求教 转换问题(怎样把小写的数字转换成大写的数字??) 30天时间限制,如何在对方机子向前改了时间后,依然不能使用。在线等呀。 这是为什么?? 遇到麻烦的问题 请教两个个VB基础问题 关于ClientToScreen、SetWindowPos的问题 我想问怎么换图标! 查找问题 答者有分 怎么样做一个文字跑马灯效果 哪位高手可以帮我设计一个程序实现十进制,二进制和八进制之间的相互转换?谢了!!!
详细总结vb的坐标系统的一些基本概念,并提供坐标定义的详细方法:
visual basic 坐标系统概述:
visual basic 的坐标系统是指在屏幕(screen)、窗体(form)、容器
(container)上定义的表示图形对象位置的平面二维格线,一般采用数对(x,y)
的形式定位。其中,x 值是沿 x 轴点的位置,最左端是缺省位置 0。Y 值是沿
y 轴点的位置,最上端是缺省位置 0。
在visual basic坐标系中,沿坐标轴定义位置的测量单位,统称为刻度,
坐标系统的每个轴都有自己的刻度。坐标轴的方向、起点和刻度都是可变的,在
后面的叙述中,将讨论如何改变这些定义。
如何创建坐标系统:
创建图形对象的坐标系统,一般有以下几种方法:
1、使用系统缺省定义:
在系统缺省状态下,visual basic使用twips坐标系,以’缇’为单位(1缇
的长度等于1/1440英寸;1/567厘米;1/20磅)。应当注意的是:这些值指示的是
图形对象打印尺寸的大小。而在计算机屏幕上的物理距离则根据监视器的大小及
分辨率的变化而变化。
2、选择系统标准刻度定义:
除了缺省的twips坐标系外,用户还可以通过对象的scalemode属性来设置其
它的坐标刻度:(共有8种设置),现将这些设置列表如下:
scalemode值 表示 说明
0 user 用户自定义
1 twip 缇,系统缺省设置
2 point 磅,每英寸约为72磅
3 pixel 像素,像素是监视器或打印机分率的最小单位。
每英寸里像素的数目由系统设备的分辨率决定。
4 character 字符,打印时,一个字符高 1/6 英寸,宽1/12 英寸
5 inch 英寸,每英寸为2.54厘米
6 millimeter 毫米
7 centimeter 厘米
在上述设置值中,除了 0 和 3以外,其它所有模式都是打印机所打印的单
位长度。例如,某对象长为4个单位,当 scalemode 设为 5 时,打印时就是4英
寸长。在程序中设定scalemode值的代码如下:
'设窗体的刻度单位为厘米。
Scalemode = 7
'设 picture1 的刻度单位为像素。
Picture1.Scalemode = 3
3、创建自定义坐标系统:
当scalemode=0时,即为用户自定义模式,可采用设置对象的相应属性,来创
建所需的坐标系统,这些属性是:
scaleleft: 设置对象左边距值
scaletop: 设置对象上边距值
scalewidth: 设置对象宽度
scaleheight: 设置对象高度
下面给出如下设置代码:
scaleleft=100
scaletop=100
scalewidth=300
scaleheight=200
picture1.scaleleft=50
picture1.scaletop=50
则所定义的坐标系如下图所示:
scaletop=100
picture1.scaleleft=50
以上代码定义窗体左上角坐标为(100,100),定义窗体内图形对象
picture1距窗体左边距离为50,上边距离为50。Scalewidth 和 scaleheight
语句定义窗体内部宽度的 1/300 为水平坐标单位;当前窗体内部高度的 1/200
为垂直坐标单位。如果窗体的大小以后被调整,这些单位保持原状。也就是说:
scalewidth 和 scaleheight 是按照对象的内部尺寸来定义单位的,并且这些
尺寸不包括边框厚度或菜单标题的高度。Scalewidth 和 scaleheight 是指对
象内的可用空间的大小。它们决定了对象本身的坐标系统。这有别于内部尺寸
和外部尺寸(由 width 和 height属性指定)定义,width 和 height 总是按
照容器的坐标系统来表示。另外以上刻度属性都可包括分数,也可是负数。如
果将 scalewidth 和 scaleheight 属性设置值为负数即改变坐标系统的方向。
4.使用scale方法定义坐标系统:
一个更简洁的改变坐标系统的途径是使用 scale 方法。定义形式如下:
[object.]scale (x1, y1) – (x2, y2)
x1 和 y1 的值,决定了 scaleleft 和 scaletop 属性的设置值。X2-x1的
差值和y2-y1的差值,分别决定了 scalewidth 和 scaleheight 属性的设置值。
若指定 x1 > x2 或 y1 > y2 的值,与设置 scalewidth 或 scaleheight 为负
值的效果相同。例如:设定窗体坐标系统如下:
scale (100, 100)-(200, 200)
该语句定义等同于以下属性设置:
scaletop=100:scaleleft=100:scalewidth=100:scaleheight=100
如何恢复缺省坐标系统:
在定义了其它坐标系后,如果需要将坐标系统恢复为缺省的twips坐标系,
可以使用不含参数的scale方法,如语句:
picture1.scale
将图形对象的坐标系统恢复为缺省,其左上角坐标为(0,0)。