當前位置:編程學習大全網 - 圖片素材 - vb界面的坐標是從左到右和從上到下的坐標是如何變化的

vb界面的坐標是從左到右和從上到下的坐標是如何變化的

VB的坐標系統綜述

由於在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)。

  • 上一篇:愛妳長久
  • 下一篇:什麽是電場強度?
  • copyright 2024編程學習大全網