搞了个曲线控件,GDI+绘制的

千杯不醉8899 千杯不醉8899 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

Private Sub MQ按钮A1_单击事件(sender As Object, e As EventArgs) Handles MQ按钮A1.单击事件
Dim list_to_p As New List(Of PointF)

曲线.粗细 = 1
曲线.质量 = Drawing2D.SmoothingMode.HighQuality
曲线.颜色 = Color.Black

跟随线.粗细 = 2
跟随线.颜色 = Color.Red

最小值曲线.粗细 = 2
最小值曲线.颜色 = Color.Blue
最小值曲线.样式 = Drawing2D.DashStyle.DashDotDot

最大值曲线.粗细 = 2
最大值曲线.颜色 = Color.Green
最小值曲线.样式 = Drawing2D.DashStyle.DashDotDot


平均值曲线.粗细 = 2
平均值曲线.颜色 = Color.OrangeRed
平均值曲线.样式 = Drawing2D.DashStyle.DashDotDot

曲线.指示区域 = New 曲线指示区域 With {.渐变色1 = Color.FromArgb(50, 0, 0, 0)}

曲线控件2.曲线集合.Clear()
曲线.点集合.Clear()

曲线控件2.曲线集合.Add(曲线)
曲线控件2.曲线集合.Add(跟随线)
曲线控件2.曲线集合.Add(最小值曲线)
曲线控件2.曲线集合.Add(最大值曲线)
曲线控件2.曲线集合.Add(平均值曲线)
Dim p As PointF
For a As Integer = 0 To 100
p = New PointF(a, Rnd() * 100 - 25)
list_to_p.Add(p)
曲线.点集合.Add(p)
跟随线.点集合.Add(p)

'最小点
p = MQdll.辅助类.计算.最小值(list_to_p, MQdll.辅助类.计算.点比较目标.点的Y)
最小值曲线.点集合.Add(p)
p = MQdll.辅助类.计算.最大值(list_to_p, MQdll.辅助类.计算.点比较目标.点的Y)
最大值曲线.点集合.Add(p)
p = New PointF(0, MQdll.辅助类.计算.平均值(list_to_p, MQdll.辅助类.计算.点比较目标.点的Y))
平均值曲线.点集合.Add(p)
Threading.Thread.Sleep(100)
曲线控件2.重置()
曲线控件2.绘制线条()
曲线控件2.Refresh()
Next

End Sub
...全文

相关推荐

评论 33
收藏 已收藏
分享
返回顶部