我最近在赶做一个台架试验数据处理系统,是一个实时记录试验数据的数据库程序,想用实时曲线同时直观的反映各个数据的变化情况,可惜VB中没有DELPHI中的CHART那样的控件(也可能是我没找到),于是费尽九牛二虎之力做了一个,先发个测试时的截图吧
先添加一个用户控件,分别添加一个Panel(ShowAreaPNL),GroupBox(GroupBox1),CheckBox(AutoScrollCHB),两个RadioBox(ActualKindRDB,StaticKindRDB),布局如上图.
以下是代码的实现:
mports System
Imports System.Collections
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing
Imports System.Windows.Forms
'<Serializable(), DefaultProperty("
ItemsV")> _
Public Class ActualCurveChart
Inherits
System.Windows.Forms.Panel
#Region "
内部嵌套类型定义:ItemV、ItemVCollection "
Enum
ChartKindEnum
ckStaticKind
ckActualKind
End
Enum
<Serializable(), TypeConverter(GetType(ComponentConverter))>
_
Public Class
ItemV
Inherits UserControl
Private _MinValue As Single = 0
Private _MaxValue As Single = 100
Private _Unit As String = ""
<DesignerSerializationVisibility(DesignerSerializationVisibility.Visible),
Browsable(True)> _
Overrides Property Text() As String
Get
Return MyBase.Text
End Get
Set(ByVal Value As String)
MyBase.Text = Value
Me.Refresh()
End Set
End Property
<DefaultValue(GetType(Single), "0")> _
Property MinValue() As Single
Get
Return _MinValue
End Get
Set(ByVal Value As Single)
_MinValue = Value
End Set
End Property
<DefaultValue(GetType(Single), "100")> _
Property MaxValue() As Single
Get