动态创建TeeChart的简便方法
最近在项目中使用Teechart ocx版本替换了labview的老版本控件,显示效果和效率均有提高,但是却遇到多线程下报access violation的问题。
翻遍大小论坛,最后在官网论坛找到相同问题,客服的答复是“多线程情况下,需要在线程中动态创建Teechart控件,不然mouse move事件可能会引起accessviolation 错误”。使用代码动态创建Teechart需要大量代码,在做多项定制并添加tools的情况下简直就是噩梦。labview的图表控件可以将配置导出为文件,动态创建的时候直接载入配置,在翻看Teechart配置工具后,终于让我找到了类似的方法,以下为使用过程(vs2010+teechart2010 ocx,其他版本或语言类似):
1、创建一个dialog,拖入一个teechart控件,在上面做好需要的各种配置。
2、在Export选项下,Native卡中选择binary,导出配置文件,这里配置文件为.tee后缀。
3、在项目中,动态创建控件,并调用CImport类的LoadFromFile方法,载入刚才保存的配置文件,这样就完美的实现了动态加载的目的而避免写出巨量的配置代码
m_dyChart = new CTchart1();
m_dyChart->Create(NULL, NULL,WS_VISIBLE | WS_CHILD, CRect(,,,), this, );
CImport imp = static_cast<CImport>(m_dyChart->get_Import());
imp.LoadFromFile("dy.tee");
动态创建TeeChart的简便方法的更多相关文章
- C#反射动态创建实例并调用方法
		在.Net 中,程序集(Assembly)中保存了元数据(MetaData)信息,因此就可以通过分析元数据来获取程序集中的内容,比如类,方法,属性等,这大大方便了在运行时去动态创建实例. MSDN解释 ... 
- jQuery中动态创建、添加元素的方法总结
		<input type="button" value="创建元素" id="btn"> <div id="box ... 
- Android编程动态创建视图View的方法
		在Android开 发中,在Activity中关联视图View是一般使用setContentView方法,该方法一种参数是使用XML资源直接创 建:setContentView (int layout ... 
- OC中动态创建可变数组的问题.有一个数组,数组中有13个元素,先将该数组进行分组,每3个元素为一组,分为若干组,最后用一个数组统一管理这些分组.(要动态创建数组).两种方法
		<span style="font-size:24px;">//////第一种方法 // NSMutableArray *arr = [NSMutableArray a ... 
- Python 动态创建函数【转】
		知乎上也有相似的问题 偶然碰到一个问题,初想是通过动态创建Python函数的方式来解决,于是调研了动态创建Python函数的方法. 定义lambda函数 在Python中定义lambda函数的写法很简 ... 
- js动态创建style节点(js文件中添加css)
		ie6 不能 document.createElement('style') 然后append到head标签里.所以就找到这样个好文章 --------------------- 有很多提供动态创建 ... 
- JS动态引入js,CSS——动态创建script/link/style标签
		一.动态创建link方式 我们可以使用link的方式.如下代码所示. 二.动态创建style方式 但是,这样的话,需要加载整个css文件,但是那样有可能浪费一个http请求并占用一个服务器请求数,并等 ... 
- Unity进阶技巧 - 动态创建UGUI
		前言 项目中有功能需要在代码中动态创建UGUI对象,但是在网上搜索了很久都没有找到类似的教程,最后终于在官方文档中找到了方法,趁着记忆犹新,写下动态创建UGUI的方法,供需要的朋友参考 你将学到什么? ... 
- Hightcharts动态创建series
		第一种方法: 申明options时动态设置series,然后再创建chart对象 代码如下: <html> <head> <title>Highcharts Exa ... 
随机推荐
- 常用组件介绍 ----  Layout_weight
			下面这些也可以算是组件 文本区 TextView 文本框 EditText layout 容器 view 千万不要把Layout_weight 与 Layout_width相混淆**** ... 
- 【深入JAVA EE】Spring配置文件解析
			在阅读的过程中有不论什么问题,欢迎一起交流 邮箱:1494713801@qq.com QQ:1494713801 一.Spring头信息 Spring配置文件的头部信息通常是固定不变的.但每个标 ... 
- cocos2dx-3.0(8)------Label、LabelTTF、LabelAtlas、LabelBMFont使用之法
			----我的生活,我的点点滴滴!! 最后一个LabelBMFont了,字体图集LabelBMFont,LabelBMFont类是一个基于位图的字体图集.是一个包括全部你须要于坐标数据一起显示在屏幕上的 ... 
- 14:质数因子PrimeNum
			14:题目描述 功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 ) 详细描述: 函数接口说明: public String getResult( ... 
- Java NIO之Charset类字符编码对象
			介绍 java中使用Charset来表示编码对象 This class defines methods for creating decoders and encoders and for retri ... 
- hdu 1203 I NEED A OFFER!(01背包)
			题意:"至少一份offer的最大概率".即求拿不到offer的最小概率 (得到offer的最大概率 = 1 - 反例的最小概率). 状态转移方程:dp[j]= Min(dp[j], ... 
- 一个简单的HTML5摇一摇实例
			<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ... 
- Jest — ElasticSearch Java 客户端
			1. 介绍 任何使用过Elasticsearch的人都知道,使用基于rest的搜索API构建查询可能是单调乏味且容易出错的. 在本教程中,我们将研究Jest,一个用于Elasticsearch的HTT ... 
- SpringBoot启动流程分析(一):SpringApplication类初始化过程
			SpringBoot系列文章简介 SpringBoot源码阅读辅助篇: Spring IoC容器与应用上下文的设计与实现 SpringBoot启动流程源码分析: SpringBoot启动流程分析(一) ... 
- EntityFramework 6.0 修改一个已经存在的对象
			public void UpdateObj(someobject obj) { db.Entry(obj).State = EntityState.Modified; db.SaveChanges() ... 
