当前位置:网站首页>VB.net类库(进阶——2 重载)

VB.net类库(进阶——2 重载)

2022-06-26 20:40:00 小虞163

这一次来看看一个函数如何带动不同的参数

我们看到:

 绿色部分:1个(共2个)

我们在类库中的main中添加2段函数:

''' <summary>
    ''' 这是一个没有字母的坐标系
    ''' </summary>
    ''' <param name="picWidth">获取图片的长度</param>
    ''' <param name="picHeight">获取图片的高度</param>
    ''' <param name="AxisColor">坐标轴的颜色</param>
    ''' <param name="penwidth">笔的粗细</param>
    ''' <returns></returns>
    Public Function CreateAxis(picWidth As Integer, picHeight As Integer, AxisColor As Color, penwidth As Single)
        '使用红色绘制坐标轴
        Dim p As New Pen(AxisColor, penwidth)
        '坐标轴末尾箭头
        p.EndCap = Drawing2D.LineCap.ArrowAnchor
        '坐标原点
        Dim originPointX As Point = New Point(0, picHeight / 2)
        Dim originPointY As Point = New Point(picWidth / 2, picHeight)
        '绘制横坐标
        g.DrawLine(p, originPointX, New Point(picWidth, picHeight / 2))
        '绘制纵坐标--http://blog.csdn.net/uruseibest
        g.DrawLine(p, originPointY, New Point(picWidth / 2, 0))
        'g.DrawString("y", New Font("宋体", 10, FontStyle.Italic), New SolidBrush(AxisColor), New Point(185, 1))
        'g.DrawString("x", New Font("宋体", 10, FontStyle.Italic), New SolidBrush(AxisColor), New Point(390, 205))
        Return Image
    End Function
    ''' <summary>
    ''' 相比较之前的函数要多处一个坐标系字母,即 X O Y
    ''' </summary>
    ''' <param name="picWidth">获取图片的长度</param>
    ''' <param name="picHeight">获取图片的高度</param>
    ''' <param name="AxisColor">坐标轴的颜色</param>
    ''' <param name="penwidth">笔的粗细</param>
    '''<param name="font">字体</param>
    ''' <returns></returns>
    Public Overridable Function CreateAxis(picWidth As Integer, picHeight As Integer, AxisColor As Color, penwidth As Single, font As Font)

        Dim brush As New SolidBrush(AxisColor)
        '使用红色绘制坐标轴
        Dim p As New Pen(AxisColor, penwidth)
        '坐标轴末尾箭头
        p.EndCap = Drawing2D.LineCap.ArrowAnchor
        '坐标原点
        Dim originPointX As Point = New Point(0, picHeight / 2)
        Dim originPointY As Point = New Point(picWidth / 2, picHeight)
        '绘制横坐标
        g.DrawLine(p, originPointX, New Point(picWidth, picHeight / 2))
        '绘制纵坐标--http://blog.csdn.net/uruseibest
        g.DrawLine(p, originPointY, New Point(picWidth / 2, 0))
        g.DrawString("y", font, brush, New Point(picWidth / 2 - 15, 1))
        g.DrawString("x", font, brush, New Point(picWidth - 10, picHeight / 2 + 10))
        g.DrawString("o", font, brush, New Point(picWidth / 2 - 10, picHeight / 2 + 10))

        Return Image
    End Function

 其中第二段:Public Overridable Function CreateAxis(picWidth As Integer, picHeight As Integer, AxisColor As Color, penwidth As Single, font As Font)

end function

是一个重载,值得注意的是:传的参数要不一样

原网站

版权声明
本文为[小虞163]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_56050945/article/details/125438592