【绘制教程】,vb2008绘制渐变同心圆。
vb.net吧
全部回复
仅看楼主
level 10
ztw1122 楼主
2013年06月25日 05点06分 1
level 10
ztw1122 楼主
Public Class Form1
Dim Xz, Yz As Integer
Private Sub Form1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Click
Dim Ox As New Bitmap(Me.Width, Me.Height) '创建位图,用窗体的大小
Dim Kos As Graphics = Graphics.FromImage(Ox) '根据位图创建Graphics,这个是gdi+的封装
Dim Llo As New Pen(Color.Black, 1) '声明画笔,黑色,1像素宽度
Dim Vs As RectangleF '声明矩形,用来在绘制是指定位置和大小
Kos.SmoothingMode = Drawing2D.SmoothingMode.HighQuality '开启抗锯齿。
For i = 1 To 255
Llo.Color = Color.FromArgb(255, i, i, i) '改变画笔颜色
Vs.X = Xz - i 'x坐标
Vs.Y = Yz - i 'Y坐标
Vs.Width = i * 2 '宽度
Vs.Height = i * 2 '高度
Kos.DrawEllipse(Llo, Vs) '绘制园
Vs.X = Xz - i - 1 '绘制比上面大1像素的园
Vs.Y = Yz - i - 1
Vs.Width = (i + 1) * 2
Vs.Height = (i + 1) * 2
Kos.DrawEllipse(Llo, Vs)
Next
Me.BackgroundImage = Ox '将位图做为窗体的背景图
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Xz = Me.Width / 2 '定义圆心坐标,因为一直用,所以用变量保存
Yz = Me.Height / 2
End Sub
End Class
2013年06月25日 05点06分 2
level 10
ztw1122 楼主
代码截图:
2013年06月25日 05点06分 3
level 11
这不是我留在vb吧的问题么……
2013年06月26日 09点06分 5
level 13
wpf无压力
2013年06月26日 12点06分 6
1