MSChart控件是用来将若干组数据以棒图、饼图、曲线图等图形方式显示出来的一种很方便、快捷的控件。但是每当数据刷新时,MSChart控件总会在屏幕上出现一种亮白色的闪烁现象,而且机器速度越慢,闪烁现象越明显。在这里提供一种用PictureBox控件解决闪烁问题的方法。
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显示的图片都不会产生闪烁现象
-
vb教程之Vb中如何消除MSchart的闪烁现象
本栏文章均来自于互联网,版权归原作者和各发布网站所有,本站收集这些文章仅供学习参考之用。任何人都不能将这些文章用于商业或者其他目的。( Pfan.cn )
最新更新
python爬虫及其可视化
使用python爬取豆瓣电影短评评论内容
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
uniapp/H5 获取手机桌面壁纸 (静态壁纸)
[前端] DNS解析与优化
为什么在js中需要添加addEventListener()?
JS模块化系统
js通过Object.defineProperty() 定义和控制对象
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比