开发环境:vs2008 sp1, WTL 8.1, cwui.ocx 8.6.11 Release (473)
一,介绍
Measurement Studio ActiveX 支持的控件列表:
http://www.ni.com/mstudio/activex_ui_gallery.htm二,安装
方法1)
安装 MeasurementStudio,但是从评估板激活后转为正式版后,ActiveX还是会有"evaluation copy"的水印。这时需要删除MeasurementStudio,重新安装。
方法2)
只安装ActiveX控件,"ActiveX 纯净包" 下载地址在:
ftp://ftp.ni.com/support/softlib/measurement_studio/Misc/NIActiveXUpdater.exe
只需要序列号,不需要激活之类的操作,方便安装。而且ocx的版本比MeasurementStudio 2012的稍微高些。
三,使用
在头文件 stdafx.h 中增加:
#import "C:\Windows\system32\cwui.ocx" rename_namespace("Ni") no_auto_exclude
no_auto_exclude 不能忽略,不然无法使用 ControlImage() 这类接口。
例1,利用 DCWGraph 控件画图
声明:
class CMainDlg : public CAxDialogImpl<CMainDlg>, public CUpdateUI<CMainDlg>, public CMessageFilter, public CIdleHandler { public: ... ... Ni::_DCWGraphPtr m_graphPtr; CAxWindow m_graphWnd; };
实例化:
LRESULT CMainDlg::OnInitDialog(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, BOOL& /*bHandled*/) { ... ... m_graphWnd = GetDlgItem(IDC_CWGRAPH1); m_graphWnd.QueryControl(&m_graphPtr); m_graphPtr->ClearData(); ... ... }
画2条正弦曲线(两条曲线形状一样,上下偏移5)
CComSafeArrayBound bound[2];// 2 维数组[0, 0]; [1, 0] bound[0].SetCount(2); // X-> 2 bound[0].SetLowerBound(0); bound[1].SetCount(1); // Y-> 1 bound[1].SetLowerBound(0); CComSafeArray<double> sa(bound, 2); long index[2], data; data = index[0] = index[1] = 0; for (int i=0; i< 100; i++) { double value = 2*sin(3.1415 * data / 5) + 3; for (index[0]=0; index[0] < 2; index[0]++) { sa.MultiDimSetAt(index, value + index[0]*5); } _variant_t variant; variant.vt = VT_ARRAY | VT_R8; variant.parray = sa.m_psa; m_graphPtr->PutYDataAppend(variant); data ++; }
参考:
http://www.cnblogs.com/kylindai/archive/2007/11/28/974797.html
相关推荐
2. **高效**:C++模板的使用使WTL能够直接与Windows API交互,减少间接调用,提高性能。 3. **可扩展**:WTL允许开发者轻松添加新的控件或自定义控件,满足特定需求。 4. **面向对象**:通过面向对象的设计,WTL使得...
本示例主要探讨如何使用WTL调用Windows Media Player (WMP) 控件,这是一个集成在Windows系统中的多媒体播放器,能够处理各种音频和视频格式。 首先,我们来看标题“wtl 调用 windows media player 示例”。这意味...
在“wtl浏览器控件的使用”这个主题中,我们将深入探讨如何利用WTL框架来集成和操作Web浏览器控件。 首先,Web浏览器控件,也称为IE浏览器控件或ActiveX Web Browser控件,是在Windows应用程序中嵌入网页浏览功能的...
在本主题中,我们将深入探讨如何在WTL中实现自定义控件的透明背景以及对话框显示背景图片的技巧。 首先,让我们理解什么是透明背景。在GUI编程中,透明度允许控件或窗口的部分或全部不显示其自身的颜色,而是透过...
首先,我们需要了解的核心概念是`AtlAxWin`类,它是WTL中用于托管ActiveX控件的窗口类。在WTL中,我们可以利用这个类来嵌入和控制Web浏览器控件(也称为Internet Explorer控件或MSHTML控件),使得应用程序能够显示...
在本教程中,我们将深入探讨如何在MFC程序员的环境中使用WTL(Windows Template Library)来托管ActiveX控件。WTL是微软提供的一种轻量级的库,它扩展了ATL(Active Template Library),使得开发Windows应用程序变...
WTL(Windows Template Library)控件库是一个轻量级的Microsoft C++库,用于构建Windows应用程序。它提供了一套丰富的控件类,帮助开发者高效地创建原生的Win32 GUI程序。WTL v1.3是该库的一个版本,包含了多个常用...
6. **控件操作**:在代码中,开发者可以通过调用扩展控件提供的接口来控制其行为,比如设置属性、获取数据等。 7. **事件响应**:扩展控件可能会有自定义的事件,开发者需要通过消息映射和事件处理函数来响应这些...
在本文中,我们将深入探讨如何使用Windows Template Library (WTL) 实现自定义控件以创建具有图片功能的用户界面。WTL 是一个轻量级的C++库,它为开发Windows应用程序提供了一种高效的方法,特别是对于创建桌面应用...
标题中的“Wtl vc 二级联动控件”指的是在Visual C++(vc)环境中使用Windows Template Library(WTL)框架实现的一种特殊的用户界面控件,它具有两级选择的交互功能,通常用于地区选择、分类筛选等场景。这种控件...
在本资源中,我们关注的是《MFC程序员的WTL指南: Part VI - 包容ActiveX控件》一书的配套源代码。这个部分主要讲解了如何在Windows Template Library (WTL) 应用程序中集成和操作ActiveX控件,并处理它们产生的事件...
**WTL自绘日历控件详解** WTL(Windows Template Library)是Microsoft提供的一款轻量级的C++库,用于构建Windows应用程序。它基于ATL(Active Template Library)并扩展了对MFC(Microsoft Foundation Classes)的...
ATL编写控件比MFC要难一些,所谓的难就是ATL中的编程向导没有MFC中的那么好用。有好多的东东要自己手工去加。所以今天我就把ATL控件建立的过程在此阐述一下,供初学者学习。代码文档...
这样,我们就可以使用WTL的控件和窗口类来构建界面。例如,我们可以使用`CWindowImpl`或`CDialogImpl`作为基础类,创建自定义的窗口或对话框。 接下来,我们需要创建一个COM接口,这个接口将暴露给外部调用者。在...
总之,利用WTL库和IE控件实现浏览器框架是一项涉及Windows编程、C++模板、ActiveX控件以及事件处理等多个方面的综合实践。通过这个项目,开发者不仅可以掌握WTL库的基本用法,还能深入了解浏览器客户端的开发流程和...
在这个主题中,我们将深入探讨“WTL选项卡控件”,这是一种用于管理选项卡视图的强大工具。 标题“WTL选项卡控件,用于管理选项卡视图”表明我们将讨论如何使用WTL来创建和管理具有选项卡界面的应用程序。在Windows...
自动同步父子item的check状态,tree的常用组合键处理。默认的CTreeViewCtrl不处理check状态的同步也不带常用组合键处理,其实这些操作基本是每个tree都会有的吧?所以就实现一个。
本示例源代码提供了使用WTL实现数据窗体客户端调用的具体实践,帮助开发者更好地理解和运用WTL进行应用程序开发。 首先,WTL提供了一种高效的方式来创建Windows应用程序,它比传统的MFC(Microsoft Foundation ...