这个必须用控件的方法解决,VB6有个Line控件很容易解决这个问题,但是VB.NET没有了,幸好微软也想到了这个缺陷,提供免费的Visual Basic PowerPacks控件箱,其中有Line控件。
创新互联专业为企业提供思茅网站建设、思茅做网站、思茅网站设计、思茅网站制作等企业网站建设、网页设计与制作、思茅企业网站模板建站服务,10余年思茅做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
Visual Basic PowerPacks下载地址:
使用 LineShape 控件绘制直线:
Mutiline 属性设置为 True
Size下的Heigh设置为1就是一条直线了
如果你的vb是vb2010及以上版本工具栏Visual Basic PowerPacks下的LineShape控件就是现成的直线控件
绘图是系统内部操作的,不需要懂原理
方法就在那里,只有会用和不会用,你的代码告诉它绘制,它就会绘制。它(方法)究竟如何去绘制的并不是重点,反正它会绘制。
drawline(绘线)方法很简单,第一个参数是pen,它确定线条的颜色、宽度和样式。第二、第三个参数都是point类型,确定两个点的位置,绘制直线。
'把“Dim graph As Graphics = Me.CreateGraphics”挪到“Button1_Click”事件内,调试过成功!
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim graph As Graphics = Me.CreateGraphics
Dim pen2 As Pen = New Pen(Color.Green, 3)
graph.DrawLine(pen2, 400, 400, 500, 200)
End Sub
End Class
不想整个重画,最好用单色的背景,例如黑色,线条是白色的
用变量把线条的内容备份
当想改变线条的位置或者长度之前,先用存下来的变量以黑色重画一次,覆盖原来的白色线条
然后再画新的白色线条,这种重画方法比较节省资源
假如需要用花哨的背景或者图片当背景,也可以用局部重回的方式。
代码就不提供了,只提供思路。