文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

VB.NET如何绘制图形

2023-06-17 21:11

关注

这篇文章主要介绍VB.NET如何绘制图形,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1.创建Graphics对象

VB.NET绘制图形需要指定绘图表面。其中,窗体和所有具有Text属性的控件都可以作为绘制图形的表面。因为Graphics对象标识GDI+的绘图表面,所以,绘制图形必须先创建Graphics对象。创建Graphics对象有以下几种方法。

1>使用CreateGraphics方法创建
这是一种常见的创建方法,其格式为:Dim 对象名 As Graphics对象名=窗体名(或控件名).CreateGraphics

2>利用PaintEventArgs参数传递Graphics对象
通过窗体或控件的Paint事件可以直接完成图形绘制。在编写Paint事件处理程序时,参数PaintEventArgs就提供了图形对象。例如:

  1. Private Sub Form1_Paint(ByVal sender As Object, 
    ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint  

  2. Dim g_paint As Graphics = e.Graphics  

  3. …  

  4. End Sub 

3>从Image对象创建
还可以使用Image对象来创建,这时要使用Graphics.FromImage方法

2.VB.NET绘制图形首先要会使用画笔

画笔是用来画线的GDI+对象,它是Pen类的一个实例。使用画笔可以绘制直线,曲线,以及矩形,圆形,多边形等形状的边框。

1>建立画笔
格式:Dim 画笔名 As New Pen(颜色[,宽度])其中颜色即用画笔绘制线条的颜色,宽度是画笔绘制线条的宽度,单位是像素。宽度的默认值是1。
例如:Dim mypen As New Pen(Color.Blue)或Dim mypen As Pen = New Pen(Color.Blue)

2>绘制线条或空心形状
建立画笔后,就可以用Graphics类的各种方法绘制直线,曲线或矩形,圆形等空心形状的线条。
(1)DrawLine方法——画直线DrawLine(画笔名,X1,Y1,X2,Y2)其中,(X1,Y1)和(X2,Y2)是直线的起始点和终止点的坐标,他们可以是Integer值,也可以是Single值。当直线很短时,可以近似为点。
(2)DrawRectangle方法——画矩形DrawRectangle(画笔名,X,Y,宽度,高度)其中,(X,Y)时矩形左上角的坐标,宽度和高度指定矩形的宽和长。
(3)DrawPolygon方法——画多边形DrawPolygon(画笔名,顶点)
其中,顶点是一个数组,该数组类型是Point或PointF结构,数组的各元素用来指定多边形各顶点的坐标。由Point结构指定的是Integer类型,而由PointF指定的是Single类型。
用Point或PointF结构来定义一个点的格式是:Dim 点名 As New Point/PointF(x,y)DrawPolygon方法的功能是按数组顶点的顺序连接成一个多边形,两个连续的顶点之间绘制一条边。
(4)DrawEllipse方法——画圆和椭圆DrawEllipse(画笔名,X,Y,宽度,高度)方法中的x,y,宽度,高度定义的矩形是要绘制的圆或椭圆的外切矩形,它决定了所画椭圆的大小和形状。当宽度和高度相等时,所画的就是圆,否则就是椭圆。
(5)DrawArc方法——画弧DrawArc(画笔名,X,Y,宽度,高度,起始角,扫描角)该方法与DrawEllipse方法相比多了起始角和扫描角两个参数,这可以看作是在截取圆或椭圆而形成的一段弧。起始角和扫描角都是以度为单位的,一般以水平向右的半径为0度,然后按顺时针方向画弧。起始角是开始画弧的角度,扫描角是顺时针方向增加的角度。当扫描角为360度时,画出的就是一个圆或者椭圆。
(6)DrawPie方法——画饼图DrawPie(画笔名,X,Y,宽度,高度,起始角,扫描角)饼图也称扇图。该方法与DrawArc方法的参数一样,但是饼图比弧多出两条半径。

以上是“VB.NET如何绘制图形”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯