1、在有MSChart控件的窗体中另外加入一个PictureBox控件,如MSChart1和Picture1。
2、使Picture1和MSChart1大小一致,位置相同(通过左对齐和顶端对齐)。
3、使Picture1在MSChart1前端,设置Picture1的Visible为False,即不可见。只有刷新数据时Picture1才显示。
4、包括MSChart1第一次赋值和刷新数据两个过程。如下:
注释:初始化过程
Private Sub Form_load()
Dim V_char() 注释:n维数组
Dim I as Integer 注释:计数变量
Dim V_series as Integer 注释:标记几个系列的变量……
MSChart1.ChartData = V_char 注释:给MSChart1初始化赋值
For I = 1 To V_series
……
注释:必须以此方式显示图例,否则Picture控件不能显示
MSChart1.DataGrid.ColumnLabel(I, 1) = 图例
Next I
MSChart1.Backdrop.Fill.Style = VtFillStyleBrush
注释:按需要设置MSChart1的背景色,否则Picture1会显示白色
MSChart1.Backdrop.Fill.Brush.FillColor.Set 192, 192, 192
End Sub
注释:刷新数据过程
Private Sub Refresh()
Dim V_newchar() 注释:n维数组
……
Picture1.Visible = True
MSChart1.ChartData = V_newchar 注释:给MSChart1重新赋值,即刷新数据
MSChart1.EditCopy 注释:将当前图表的图片复制到剪贴板中
Picture1.Picture = Clipboard.GetData() 注释:给Picture1赋值剪贴板中的图片
End Sub
这样每一次刷新数据时Picture1显示的图片都不会产生闪烁现象
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/