当前位置:编程学习 > C#/ASP.NET >>

VB.NET怎么画点

我想在PictureBox1控件上用鼠标画点,用鼠标的move事件画点连线,高手帮忙啊,谢谢了。   --------------------编程问答--------------------
Public Class Form1

    Dim a As Single
    Dim b As Single
    
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       PictureBox1.BackColor = Color.White
    End Sub
    Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
        Dim g As Graphics = PictureBox1.CreateGraphics
        g.DrawEllipse(Pens.Red, New RectangleF(e.X, e.Y, 2, 2))
        g.FillEllipse(Brushes.Red, New RectangleF(e.X, e.Y, 2, 2))
        a = e.X
        b = e.Y
        g.Dispose()
    End Sub
    Private Sub PictureBox1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseUp
        Dim g As Graphics = PictureBox1.CreateGraphics
        g.DrawLine(Pens.Red, a, b, e.X, e.Y)
        g.Dispose()
    End Sub
End Class
--------------------编程问答-------------------- 回复得强 --------------------编程问答-------------------- 呵呵,佩服 --------------------编程问答-------------------- 能像CAD中的效果就更好了。 --------------------编程问答-------------------- 学习~~~ --------------------编程问答-------------------- 我怀疑楼主不是要这个需求,要知道按照上面代码的话,是没有保存点的位置信息的,最小化或者别的窗口挡住以后就还原不回来的。

--------------------编程问答-------------------- 这个只是画两点间的连线的吧。
和VB6的Pset不是一回事。
NET什么都命名空间,晕啊.... --------------------编程问答-------------------- 画圆,更像一个点
Dim g As Graphics = Me.CreateGraphics '画板
Dim mypen As New Pen(Color.Red, 10) '画笔
g.DrawEllipse(mypen, e.X, e.Y, 10, 10) '画圆,只要笔宽、椭圆高宽都相同,就是点了吧?
g.Dispose()
mypen.Dispose() --------------------编程问答--------------------
引用 4 楼 asdfy 的回复:
能像CAD中的效果就更好了。

如果要是模拟CAD那样,设置成region可以。反正每个线条都是一个region。
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,