《VisualBasic程序设计第9章图形设计.ppt》由会员分享,可在线阅读,更多相关《VisualBasic程序设计第9章图形设计.ppt(29页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Visual BasicVisual BasicVisual BasicVisual Basic程序设计程序设计程序设计程序设计第第第第9 9 9 9章章章章 图形设计图形设计图形设计图形设计200920092009200920092009年年年年年年 月月月月月月 日日日日日日计算机计算机学院学院教师:傅茂教师:傅茂教师:傅茂教师:傅茂教师:傅茂教师:傅茂洺洺洺洺洺洺Visual Basic程序设计程序设计/第第9章章 图形设计图形设计2/299.1 9.1 坐标系统和颜色坐标系统和颜色提提 要要9.2 9.2 图形控件图形控件9.3 9.3 常用绘图方法常用绘图方法9.4 9.4 显示图片
2、显示图片Visual Basic程序设计程序设计/第第9章章 图形设计图形设计3/299.1 坐标系统和颜色坐标系统和颜色9.1.1 坐标系统坐标系统坐标原点、坐标度量单位、坐标轴的长度与方向坐标原点、坐标度量单位、坐标轴的长度与方向1.坐标度量单位坐标度量单位(坐标刻度坐标刻度)由容器对象的由容器对象的ScaleMode属性决定属性决定 如:在窗体上绘制控件及图形,窗体为容器对象。如:在窗体上绘制控件及图形,窗体为容器对象。Visual Basic程序设计程序设计/第第9章章 图形设计图形设计4/29 2.VB的缺省坐标系统的缺省坐标系统Visual Basic程序设计程序设计/第第9章章
3、图形设计图形设计5/29 3.自定义坐标系自定义坐标系 方法一:设置对象的相关坐标属性方法一:设置对象的相关坐标属性属性属性说说明明ScaleLeftScaleLeft对对象左上角的横坐象左上角的横坐标标ScaleTopScaleTop对对象左上角的象左上角的纵纵坐坐标标ScaleLeft+ScaleWidth ScaleLeft+ScaleWidth 对对象右下角的横坐象右下角的横坐标标ScaleTop+ScaleHeightScaleTop+ScaleHeight对对象右下角的象右下角的纵纵坐坐标标CurrentXCurrentX当前点的横坐当前点的横坐标标CurrentYCurrentY
4、当前点的当前点的纵纵坐坐标标表表9-2 坐标属性坐标属性Visual Basic程序设计程序设计/第第9章章 图形设计图形设计6/29【例例9-1】在窗体的单击事件中定义窗体在窗体的单击事件中定义窗体Form1的坐标系的坐标系 Private Sub Form_Click()Cls Form1.ScaleLeft=-200 Form1.ScaleTop=250 Form1.ScaleWidth=500 Form1.ScaleHeight=-400 End SubVisual Basic程序设计程序设计/第第9章章 图形设计图形设计7/29方法二:采用方法二:采用Scale方法来设置坐标系方法来
5、设置坐标系 对象对象.Scale(左上角坐标左上角坐标)(右下角坐标右下角坐标)【例例9-2】假定当前对象为窗体假定当前对象为窗体Form1,则代码:,则代码:Me.Scale(-200,250)(300,-150)采用的采用的Scale方法所定义的坐标系与例方法所定义的坐标系与例9-1是等效的是等效的Visual Basic程序设计程序设计/第第9章章 图形设计图形设计8/299.1.2 使用使用VB颜色颜色1.QBColor函数函数 QBColor(color)color参数是介于参数是介于015的整型值的整型值值值颜颜色色值值颜颜色色0 0黑色黑色8 8灰色灰色1 1蓝蓝色色9 9亮亮蓝
6、蓝色色2 2绿绿色色1010亮亮绿绿色色3 3青色青色1111亮青色亮青色4 4红红色色1212亮亮红红色色5 5洋洋红红色色1313亮洋亮洋红红色色6 6黄色黄色1414亮黄色亮黄色7 7白色白色1515亮白色亮白色表表9-3 color参数的设置值所选择的颜色参数的设置值所选择的颜色Visual Basic程序设计程序设计/第第9章章 图形设计图形设计9/292.RGB函数函数 RGB(R,G,B)R、G、B分别指明三原色中红色、绿色、蓝色的比例,它分别指明三原色中红色、绿色、蓝色的比例,它们的取值范围为们的取值范围为0255。颜颜色色R值值G值值B值值黑色黑色000红红色色25500绿绿
7、色色02550兰兰色色00255青色青色0255255洋洋红红色色2550255黄色黄色2552550白色白色255255255表表9-4 常见的标准颜色常见的标准颜色RGB值值Visual Basic程序设计程序设计/第第9章章 图形设计图形设计10/291.线条控件线条控件(Line)在窗体、图片框和框架中画各种直线段。通过使用在窗体、图片框和框架中画各种直线段。通过使用Line控件在窗体控件在窗体上可视化地安排直线的位置、长度、宽度、颜色等。上可视化地安排直线的位置、长度、宽度、颜色等。常用属性:常用属性:X1、X2、Y1和和Y2 BorderStyle(边框风格)属性(边框风格)属性
8、BorderWidth(线宽)属性(线宽)属性 9.2 9.2 图形控件图形控件Visual Basic程序设计程序设计/第第9章章 图形设计图形设计11/292.形状控件形状控件(Shape)Shape控件预定义了控件预定义了6种形状,通过设置种形状,通过设置Shape属性来实现属性来实现 所需形状。所需形状。属性属性值值常数常数说说明明0 0VbShapeRectangleVbShapeRectangle(缺省(缺省值值)矩形)矩形1 1VbShapeSquareVbShapeSquare正方形正方形2 2VbShapeOvalVbShapeOval椭圆椭圆形形3 3VbShapeOval
9、VbShapeOval圆圆形形4 4VbShapeRoundedRectangleVbShapeRoundedRectangle圆圆角矩形角矩形5 5VbShapeRoundedSquareVbShapeRoundedSquare圆圆角正方形角正方形表表9-5 Shape属性设置值及对应的形状属性设置值及对应的形状Visual Basic程序设计程序设计/第第9章章 图形设计图形设计12/299.2.3 图形控件与动画图形控件与动画【例9-3】ShapeLineTimerVisual Basic程序设计程序设计/第第9章章 图形设计图形设计13/29Timer1的的Timer事件代码:事件代码
10、:Private Sub Timer1_Timer()t=t+1 Shape3.Left=x0+Shape1.Tag*Cos(pi*t/30)-90 Shape3.Top=y0-Shape1.Tag*Sin(pi*t/30)-90 Line1.X2=Shape3.Left+90 Line1.Y2=Shape3.Top+90 Line2.Y2=y0-Shape1.Tag*Sin(pi*t/30)-Sqr(Line2.Tag2 _ -(Shape1.Tag*Cos(pi*t/30)2)Line2.X1=Line1.X2 Line2.Y1=Line1.Y2 Shape4.Top=Line2.Y2-2
11、00End SubVisual Basic程序设计程序设计/第第9章章 图形设计图形设计14/299.2.4 与图形有关的属性与图形有关的属性类别类别属属 性性显显示示处处理理AutoRedraw,ClipControls绘图绘图技技术术DrawMode,DrawStyle,DrawWidth,BorderStyle,BorderWidth填充填充技技术术FillColor,FillStyle颜颜色色BackColor,ForeColor,BorderColor,FillColor表表9-8 对象的图形属性对象的图形属性Visual Basic程序设计程序设计/第第9章章 图形设计图形设计15
12、/291.DrawMode属性属性 决定绘制线条的真实颜色决定绘制线条的真实颜色 对象对象.DrawMode=值值2.DrawWidth属性和属性和DrawStyle属性属性 DrawWidth属性用来设置绘图线的宽度属性用来设置绘图线的宽度 对象对象.DrawWidth=值值 DrawStyle属性用于指定用图形方式创建的线是实线还是虚线属性用于指定用图形方式创建的线是实线还是虚线 对象对象.DrawStyle=值值Visual Basic程序设计程序设计/第第9章章 图形设计图形设计16/29DrawWidth属性和属性和DrawStyle属性设属性设置对应的线宽和线型置对应的线宽和线型V
13、isual Basic程序设计程序设计/第第9章章 图形设计图形设计17/293.FillColor属性和属性和FillStyle属性属性 FillColor属性为填充色和属性为填充色和FillStyle属性为填充样式属性为填充样式 对象对象.FillColor=值值 对象对象.FillStyle=值值图图9-8 FillStyle属性不同设置值的效果属性不同设置值的效果Visual Basic程序设计程序设计/第第9章章 图形设计图形设计18/299.3 常用绘图方法常用绘图方法1.画点方法画点方法(PSet)可以在对象的指定位置可以在对象的指定位置(x,y),按确定的像素颜色画点,按确定的
14、像素颜色画点 对象对象.Pset Step(x,y),颜色颜色【例例9-4】使用使用PSet方法绘制阿基米德螺线方法绘制阿基米德螺线X=t*costY=t*sintFor t=0 To 12 Step 0.01 y=t*Sin(t)x=t*Cos(t)PSet(x,y),vbRedNext t图图9-9 用用Pset方法绘制数学曲线方法绘制数学曲线Visual Basic程序设计程序设计/第第9章章 图形设计图形设计19/292.画直线、矩形方法画直线、矩形方法 画直线、矩形方法可以在对象上的两点之间画直线或矩形画直线、矩形方法可以在对象上的两点之间画直线或矩形 对象对象.Line Step
15、x1,y1-Step(x2.y2),颜色颜色,BF【例例9-5】使用使用Line方法的不同参数画出图形方法的不同参数画出图形起始点坐标起始点坐标终点坐标终点坐标画菱形的左上边画菱形的左上边Line(ScaleLeft,my)-(mx,ScaleTop)画菱形的右上边画菱形的右上边Line-(ScaleWidth+ScaleLeft,my)画菱形的右下边画菱形的右下边Line-(mx,ScaleHeight+ScaleTop)画菱形的左下边画菱形的左下边Line-(ScaleLeft,my)Visual Basic程序设计程序设计/第第9章章 图形设计图形设计20/293.画圆方法画圆方法 可以
16、在容器对象上画圆、椭圆或弧可以在容器对象上画圆、椭圆或弧 对象对象.Circle Step(x,y),半径半径,颜色颜色,开始开始,结束结束,方位方位Const pi=3.1415926Circle(1500,1200),1000,vbRed,-pi/2,-2*piCircle Step(500,-500),500Circle Step(0,0),500,5/25说明:说明:(x,y)(x,y)指定圆、椭圆或弧的中心坐标指定圆、椭圆或弧的中心坐标“开始开始”和和“结束结束”指定弧或扇形的起始点以及终点位置指定弧或扇形的起始点以及终点位置方位方位 为垂直半径与水平半径之比,不能为负数为垂直半径与
17、水平半径之比,不能为负数【例例9-69-6】利用利用CircleCircle方法在窗体中央画出如图方法在窗体中央画出如图9-119-11所示的图所示的图形。形。Visual Basic程序设计程序设计/第第9章章 图形设计图形设计21/29 4.清除图形方法清除图形方法 可以清除窗体或可以清除窗体或PictureBox等容器对象中由图形和等容器对象中由图形和打印语句在运行时所生成的图形和文本。打印语句在运行时所生成的图形和文本。语法语法:对象对象.Cls 调用调用Cls之后,对象的之后,对象的CurrentX和和CurrentY属性复属性复位为位为0(返回坐标原点返回坐标原点)。Visual
18、Basic程序设计程序设计/第第9章章 图形设计图形设计22/299.4 显示图片显示图片图片可以在三个对象中出现图片可以在三个对象中出现 Form、PicutreBox、Image1.直接加载图片到窗体直接加载图片到窗体使用窗体的使用窗体的Picture属性属性要在运行时显示或替换图片,可利用函数要在运行时显示或替换图片,可利用函数LoadPicture来设来设置置Picture属性属性 LoadPicture(文件名文件名)注明:注明:“文件名文件名”是一个字符串表达式,包括驱动器、文件夹和文件的是一个字符串表达式,包括驱动器、文件夹和文件的名称,也可以使用名称,也可以使用App.Path
19、获得当前路径获得当前路径Visual Basic程序设计程序设计/第第9章章 图形设计图形设计23/292.使用图像框使用图像框(Image)控件控件Picture属性属性LoadPicture函数函数Strech(伸展属性伸展属性)【例例9-7】设计一个窗体,在窗体上添加设计一个窗体,在窗体上添加3个图像框个图像框和和2个命令按钮。当用户单击个命令按钮。当用户单击“交换交换”命令按钮命令按钮时,交换两个图像框中的图形;单击时,交换两个图像框中的图形;单击“结束结束”命命令按钮时,结束程序运行。令按钮时,结束程序运行。Visual Basic程序设计程序设计/第第9章章 图形设计图形设计24/
20、29程序界面设计及运行结果程序界面设计及运行结果Visual Basic程序设计程序设计/第第9章章 图形设计图形设计25/293.使用图片框使用图片框(PictureBox)控件控件 PictureAutoSizeImage【例例9-8】利用图片框(利用图片框(PictureBox)输出图形和文本。)输出图形和文本。Visual Basic程序设计程序设计/第第9章章 图形设计图形设计26/294.使用滚动条控件使用滚动条控件(ScrollBar)滚动条属性滚动条属性(ValueLargeChangeSmallChange)滚动条事件滚动条事件(ChangeScroll)滚动条应用滚动条应用
21、【例例9-9】水平滚动条水平滚动条(HScrollBar)垂直滚动条垂直滚动条(VScrollBar)利用滚动条控制设置利用滚动条控制设置R(红红)、G(绿绿)、B(蓝蓝)三原色彩的调合比例并返回调合色三原色彩的调合比例并返回调合色彩的彩的RGB值值Visual Basic程序设计程序设计/第第9章章 图形设计图形设计27/29习习 题题 8 9-1 利用(利用(Line、Shape)图形控件和标签控件编制小时钟程序,)图形控件和标签控件编制小时钟程序,并利用并利用Timer控件来控制指针的转动,如图控件来控制指针的转动,如图9-18所示。所示。图图9-18“时钟时钟”程序界面设计及运行结程序界面设计及运行结果果 Visual Basic程序设计程序设计/第第9章章 图形设计图形设计28/29 9-2 编写程序,用编写程序,用Circle方法在窗体上绘制由圆环构成的艺术方法在窗体上绘制由圆环构成的艺术图案,如图图案,如图9-20所示。所示。图图9-20“圆环艺术图案圆环艺术图案”运行结运行结果果 Visual Basic程序设计程序设计/第第9章章 图形设计图形设计29/29欢迎提问!欢迎提问!