这个要用GDI+画。要看你.net版本。
公司主营业务:网站设计制作、成都网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出沈河免费做网站回馈大家。
以下是VS2005中的一段代码。
Me.PictureBox1.Height = 450
Me.PictureBox1.Width = 880
Dim gr As Graphics '定义画布
Dim bp As New Bitmap(880, 450) '定义位图,并进行赋值
Dim p As New Pen(Color.Black) '定义画笔
p.Width = 2 '宽度2
p.DashStyle = Drawing2D.DashStyle.Solid '样式直线
PictureBox1.Image = bp
gr = Graphics.FromImage(PictureBox1.Image)
gr.FillRectangle(Brushes.White, New Rectangle(0, 0, PictureBox1.Width, PictureBox1.Height))
gr.DrawLine(p, a, b, a, .Height - b) '绘制纵坐标
gr.DrawLine(p, a, .Height - b, .Width - a, .Height - b) '绘制横坐标
。net 其实还是很好绘制图形的
你可以看下 Graphics 类
Dim d As New Bitmap(Me.Width, Me.Height) ‘一个图片吧
Dim g As Graphics = Graphics.FromImage(d)’绘制 准备在这个图片是进行
然后 就是你绘制的东西了
线 就是 g.DrawLine()
圆 弧度 就用 g.DrawArc(Pens.Black, New Rectangle(0, 0, 400, 200), 0, 360)
复杂的就是 g.DrawBezier()
等 如果你用的是 VS的 编译 上面都有详细的参数说明
Dim d As New Bitmap(Me.Width, Me.Height)
Dim g As Graphics = Graphics.FromImage(d)
g.DrawArc(Pens.Black, New Rectangle(0, 0, 200, 200), 0, 360)
g.DrawLine(Pens.Red, New Point(0, 0), New Point(200, 200))
g.DrawLines(Pens.Green, New Point() {New Point(0, 0), New Point(50, 40), New Point(50, 80), New Point(90, 70), New Point(100, 400)})
g.DrawBezier(Pens.Yellow, New Point(0, 100), New Point(0, 0), New Point(200, 0), New Point(200, 200))
g.Dispose()
Me.BackgroundImage = d
画饼图的例子,
Me.LoadDriveInfo(DrivesOnPc.Items(DrivesOnPc.SelectedIndex)) 计算比例大小
Me.Invalidate() 触发窗体绘图
'窗体画图(饼图)
Private Sub form3_paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles MyBase.Paint
'设定RECTANGLE结构变量,确定画图的范围及大小
Dim rect As Rectangle = New Rectangle(280, 20, 200, 200)
Dim rect2 As Rectangle = New Rectangle(270, 10, 400, 320)
Dim freelegend As Rectangle = New Rectangle(280, 300, 20, 20)
Dim usedlegend As Rectangle = New Rectangle(280, 275, 20, 20)
e.Graphics.DrawRectangle(Pens.Black, rect2)
e.Graphics.DrawLine(Pens.Black, 270, 260, 670, 260)
If Me.isSpaceInfoVailable = True Then
'填充椭圆图像(角度)
e.Graphics.FillPie(Brushes.Magenta, rect, 0, Sweep)
e.Graphics.FillPie(Brushes.Blue, rect, Sweep, 360 - Sweep)
'填充方形
e.Graphics.FillRectangle(Brushes.Magenta, freelegend)
e.Graphics.FillRectangle(Brushes.Blue, usedlegend)
e.Graphics.DrawString(
构造Pen的时候可以指定粗细,如果你指定为1,并且放大了10倍,最后就成10了,所以你指定小点就行了,比如 Dim p As New Pen(Color.Black, 0.01) 最终绘制的线的粗细不会小于1