《图形控件和图形方法》由会员分享,可在线阅读,更多相关《图形控件和图形方法(29页珍藏版)》请在金锄头文库上搜索。
1、第6章 图形控件和图形方法 6.1 图形控件 6.2 Visual Basic坐标系 6.3 图形方法 6.4 小 结 16.1.1 图片框控件 工具箱中图片框控件的图标为 。 图片框控件名称的缺省值为:Picture1、Picture2、,微软 建议名称前缀为pic。 图片框控件用以显示图片,也可以作为其他对象的容器、显 示图形方法的输出结果和Print方法输出的文本。 1图片框控件的常用属性 q (1) Picture属性。 图片框控件的Picture属性返回或设置图片框中的图片。 在图片框中加载图像有下列两种方式: 1) 设计时选取:界面设计时,在该图片框控件属性窗口中点击 “Pictu
2、re”属性,随之弹出“加载图片”对话框,选择所要显示的图 片文件后,相应的图片被加载到图片框中。 2) 运行时装入:程序运行时,可用LoadPicture函数装入图片到 图片框控件中。格式:图片框控件名.Picture = LoadPicture (filename) 26.1.1 图片框控件q (2) AutoSize属性。 AutoSize属性值为True时,图片框的边界会随着所装入图片的 大小变化而变化。此时在设计窗体过程中就应特别小心,图片将 不考虑窗体上其他控件的分布情况,而根据图片的大小自动调整 图片框的大小,可能导致窗体上的其他控件被覆盖,所以应慎用 ,以免影响窗体界面的完整性。
3、 q (3)Align属性 图片框控件的Align属性值为0:标准位置,图片框在原位置。 图片框控件的Align属性值为1,则图片框贴紧到窗体的上边; Align属性值为2,则图片框贴紧到窗体的下边。 图片框控件的Align属性值为3,则图片框贴紧到窗体的左边; Align属性值为4,则图片框贴紧到窗体的右边。 36.1.1 图片框控件2图片框控件的常用方法 (1) Print方法。 图片框控件可以用来显示Print方法输出的文本,格式如 下: 图片框控件名称.Print 输出表 如执行“Picture1.Print “图片框“”,则在图片框 Picture1上当前输出位置,显示“图片框”这3
4、个字。 (2) Cls方法。 图片框上除了所装入的图片外,其他的所有文字、图形 都可以用Cls方法擦除,格式如下: 图片框控件名称.Cls 46.1.2 影像框控件 工具箱中影像框控件的图标为 。 影像框控件名称的缺省值为:Image1、Image2、 ,微软建议名称前缀为img。 影像框控件只能用于显示图像,不支持图形方法,也不 能当作容器来使用。 1影像框控件常用属性 (1) Picture属性。 与图片框控件的Picture属性一样,可以在设计时设置, 也可以在程序运行时用LoadPicture函数装入。详细说 明可以参见6.1.1。 (2) Stretch属性。 图片框控件的AutoS
5、ize属性设置为True时,其大小会随 所装入的图片而变化,这样可以得到图片的原始大小, 但有时当所加载的图片比较大时,可能会影响窗体上其 他控件的显示。 56.1.2 影像框控件 2影像框控件常用事件 影像框控件与图片框控件可以响应的事件过程大体相同,如 Change、Click、MouseDown、MouseUp、MouseMove等常用事 件。 读者可以根据程序设计的要求,编写相应的事件过程,下列各 程序段可以帮助读者了解鼠标引发事件过程的使用方法。 下列事件过程可以显示鼠标在影像框控件上点击位置的坐标值 。 Private Sub Image1_MouseDown(Button As
6、Integer,Shift As Integer, _ X As Single, Y As Single) 参数x、y为鼠标在影像框按下处 的坐标值。 Print X, Y End Sub Image控件可接受Click等事件,因此可以充当图形命令按钮。 66.1.3 形状控件 工具箱中形状控件的图标为。 形状控件缺省的控件名称为:Shape1、Shape2、,微软建 议名称前缀为shp。 1形状控件常用属性 (1) Shape属性。 形状控件用于创建指定的图形,通过设置Shape属性来得到所需 要的形状,画出正方形、矩形、圆和椭圆等。 Shape属性定义该控件显示的图形。取整数值或系统定义的
7、符号 常量,取值及含义如下: 0或VbShapeRectangle:控件形状为矩形 。 1或VbShapeSquare:控件形状为正方形。 2或VbShapeOval:控件形状为椭圆形。 3或VbShapeCircle:控件形状为圆形。 4或VbShapeRoundedRectangle:控件形状为圆角矩形。 5或VbShapeRoundedSquare:控件形状为圆角正方形。 76.1.3 形状控件 (2) BorderStyle属性。 该属性定义图形边框样式,取值及含义如下: 0:透明,即无边框。 1:实线,为缺省值。 2:长虚线。 3:虚线。 4:点划线。 5:双点划线。 6:内插实线,
8、如果BorderWidth属性值大于1,控件保证图形最 大尺寸等于设定值。 86.1.3 形状控件 (3) FillStyle属性。 该属性用于指定图形的填充样式。取值及含义如下: 0:实心填充 1:透明,即不填充,为缺省值。 2:水平线填充。 3:垂直线填充。 4:斜线填充。 5:反斜线填充。 6:网格填充。 7:倾斜网格填充。 96.1.3 形状控件 (4) 其他常用属性。 BorderColor:设置边框颜色。 FillColor:设置填充颜色。 BorderWidth:设置边框宽度。 利用形状控件,可以在界面设计时,通过对形状控件有关属性 的设置直接得到相应的图形,也可以在程序中设置属
9、性来获得所 需要的图形。 106.1.4 直线控件 工具箱中直线控件的图标为 。 直线控件缺省的控件名称为:Line1、Line2、,微软建议 名称前缀为lin。 直线控件与形状控件相似,但只用于画线。界面设计时可以通 过鼠标操作调整线段的位置、长短和颜色等属性;程序运行时, 可以通过改变直线的端点坐标(x1,y1)、(x2,y2)来移动它或 调整它的长短。 同形状控件的边框样式属性一样,Line控件通过对BorderStyle 属性的设置定义该控件所显示的直线的线形,其不同取值表示不 同的线形,分别为透明、实线、长虚线、虚线、点划线、双点划 线等。116.2.1 容器坐标系 在Visual
10、Basic中,每个容器都有一个坐标系,坐标系 中的X轴向右、Y轴向下延伸,如图6-11所示为缺省的 窗体坐标系统、框架控件的坐标系统。 1控件在容器中的位置属性 控件在容器中的位置属性包括Top属性和Left属性。 xy图6-11 Visual Basic坐标系示例 126.2.1 容器坐标系 q(1) Top属性。 控件的该属性值是控件左上角到所在容器上边沿的距离 。如果控件外的容器为窗体,则控件的Top属性值为控 件左上角到所在窗体标题栏下边沿的距离。 q(2) Left属性。 控件的该属性值是控件左上角到所在容器左边沿的距离 。 Private Sub Form_Click() Prin
11、t Top, Left, Height, Width Print Frame1.Top, Frame1.Left, Frame1.Height, Frame1.Width Print Text1.Top, Text1.Left, Text1.Height, Text1.Width End Sub 136.2.1 容器坐标系 2控件自身宽度、高度的属性 q (1) Width属性,该属性值为控件本身的宽度。 q (2) Height属性,该属性值为控件本身的高度。 在图6-11中,如果拖动框架控件、改变其在窗体中的位置,框架 控件的Top、Left属性可以被改变,而Width、Height属性不
12、改变 。如果仅改变框架控件的大小而保持其左上角位置不变,则 Width、Height属性被改变。 3容器(窗体、图片框)的坐标属性 q (1) ScaleLeft属性,该属性值为容器左上角的横坐标,缺省值为0 。 q (2) ScaleTop属性,该属性值为容器左上角的纵坐标,缺省值为0 。 q (3) ScaleWidth属性,该属性值为容器内部的宽度值。 q (4) ScaleHeight属性,该属性值为容器内部的高度值 q (5) CurrentX、CurrentY属性,分别表示当前点在容器内的横坐标 、纵坐标。设置CurrentX、CurrentY属性后,所设值就是下一个 输出方法的当
13、前位置。 146.2.2 改变容器坐标系的Scale方法 容器坐标系中,坐标系刻度单位的缺省值为“缇”(1缇 0.01764mm),容器的最小坐标值为左上角坐标,容器的最 大坐标值为右下角坐标。 利用Scale方法可以改变原点的坐标并随之改变最大坐标值, 格式为:容器名.Scale (x1,y1)-(x2,y2) 该语句功能:改变容器(缺省容器名指窗体)左上角坐标为 (x1,y1),右下角坐标值为(x2,y2),将容器在X轴方向分为x2-x1 等份、Y轴方向分为y2-y1等份,并将容器的4个坐标属性设置为 : 容器名.ScaleLeft=x1 容器名.ScaleTop=y1 容器名.Scale
14、Width=x2-x1 容器名.ScaleHeight=y2-y1 156.2.3 坐标刻度 Visual Basic程序设计中,经常使用的刻度单位为:缇、磅和 毫米。通过设置容器的ScaleMode属性可以选择改变坐标系统的 单位。 1设置(选择)标准刻度 ScaleMode属性值为1,容器坐标系的刻度单位为缇,1缇 0.01764毫米0.05磅 ScaleMode属性值为2,容器坐标系的刻度单位为磅,1磅 0.353毫米。 ScaleMode属性值为3,容器坐标系的刻度单位为像素,是显示 器分辨率的最小单位。 ScaleMode属性值为4,容器坐标系的刻度单位为字符,每个字 符宽6磅、高1
15、2磅。 ScaleMode属性值为5,容器坐标系的刻度单位为英寸。 ScaleMode属性值为6,容器坐标系的刻度单位为毫米。 ScaleMode属性值为7,容器坐标系的刻度单位为厘米。 166.2.3 坐标刻度 当选择标准刻度时,系统自动使ScaleLeft、ScaleTop值为0, 并设置ScaleHeight、ScaleWidth值,这些属性决定了容器坐标 的最小值、最大值。 2自定义刻度 将ScaleMode值设置为0,则采用自定义刻度。 用Scale方法设置坐标系后,ScaleMode值自动变为0。反之, ScaleLeft、ScaleTop、ScaleHeight、ScaleWidth属性被改变, ScaleMode值自动变为0,单位长度根据变化后的上述属性重新 确定。 176.3.1 使用颜色 使用图形方