vb.net画布 vbs 画图

vb.net2010中如何在窗口中建立画布'绘制图形的三步曲
'1,获得一个Graphics对象
Dim MyGraphics As Graphics
MyGraphics = Me.CreateGraphics
'2,定义一个Pen对象,用于绘制图形(轮廓线)
Dim MyPen As New Pen(Color.Black)
'3,定义一个Brush对象,用于填充图形(如果需要填充的话)
Dim MyBrush As New SolidBrush(Color.Orange)
MyGraphics.FillEllipse(MyBrush, 200, 200, 100, 100)'绘制一个实心圆,该圆在:直线x=200,y=200,x=200+100,y=200+100所划的矩形区域内
MyGraphics.DrawEllipse(MyPen, 200, 200, 100, 100)'绘制一个空心圆,该圆在:直线x=200,y=200,x=200+100,y=200+100所划的矩形区域内
vb.net 画线再画保留以前画得可以把所有画的线都保存在一个列表中,画的时候全部画出即可 。如下:
Public Class Form1
Class Line'直线类
Public Point1, Point2 As Point'成员,直线的两个端点
Sub New(p1 As Point, p2 As Point)'构造方法
Point1 = p1
Point2 = p2
End Sub
Public Sub Draw(g As Graphics)'绘制方法
g.DrawLine(Pens.Black, Point1, Point2)
End Sub
End Class
Private Lines As New List(Of Line)'列表用于保存所有画下的直线
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
BackColor = Color.White
DoubleBuffered = True'开启双缓冲可有效避免闪烁
End Sub
Private Sub Form1_MouseDown(sender As Object, e As MouseEventArgs) Handles Me.MouseDown
Lines.Add(New Line(e.Location, e.Location))'在直线列表中添加直线
End Sub
Private Sub Form1_MouseMove(sender As Object, e As MouseEventArgs) Handles Me.MouseMove
If e.ButtonWindows.Forms.MouseButtons.Left Then Return '左键未按下
'鼠标拖动时改变列表最后一条直线(也即当前直线的第二个端点)
Lines(Lines.Count - 1).Point2 = e.Location
Refresh()'刷新窗体
End Sub
'在Form的Paint事件中绘制所有直线 , 每次Form1重绘时都会触发Paint事件
'PS: 也可以通过重写OnPaint方法来达到类似的效果
Private Sub Form1_Paint(sender As Object, e As PaintEventArgs) Handles Me.Paint
e.Graphics.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias'开启抗锯齿
For Each l In Lines'遍历所有直线
l.Draw(e.Graphics)'调用绘制方法,传入的参数可以理解为画布
Next
End Sub
End Class
运行效果:
vb.net 画布最大能有多大板芯一般设置960到980,画布一般是设为1900,最大的设置取决于用来编写代码的软件界面 。
在vb.net中,paintcanvas里面填满了颜色,我想通过点击一个按钮来完成清除整个画布内容的效果 , 要用GreateGrahpics函数vb.net画布 , 比如要向 Panel1vb.net画布 , 填充颜色:
Dim g As Graphic=Panel1.CreateGraphics
Dim b as New Brush(Color.Blue)
g.FillRectangle(b,Panel1)
写vb.net画布的比较粗vb.net画布,意思就是这样的,vb.net画布你可以边看帮助边细细完成
Vb.net怎么实现图像的处理这问题有点笼统,软糖来说说把:
图像处理由System.Drawing命名空间负责 。
主要是Bitmap类和Graphics类 。
Bitmap表示一个位图,可以是BMP,JPG,PNG等文件 。
装载位图
Dim 位图 As Bitmap = Bitmap.FromFile("C:\Image1.PNG")
Graphics表示一张画纸 , 能够进行绘制操作 。
它可以被窗体、控件、位图调用CreateGraphics()方法来创建 。
然后调用Graphics.Draw开头的一系列函数来绘制图像和图形,Fill开头的填充图形 。
创建画纸并绘制位图
Dim 画纸 As Graphics = Me.CreateGraphics()
画纸.DrawImage(位图, 100, 100, 256, 256)
可以将上面三行放到Form1_Load中测试 , 把路径改一下 , 

推荐阅读