首先,我们需要在StdAfx.h增加头文件:

#include "XTToolkitPro.h"

#include "XTPResource.h"

在test.rc2增加:

#include "XTToolkitPro.rc"

我们先来使用一下CXTTPButtonbutton控件:

在对话框资源中拖入一个标准button控件:

在对话框头文件testDlg.h中增加一个CXTTPButton控件变量:

CXTPButton xbtn;

最好放在//Dialog data中间

在testDlg.cpp中将控件变量与控件ID进行DDX绑定:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHAzMTAwMTg5MzE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

好了编译执行即可了。

之后我们还能够在OnInitDialog()中通过调用CXTTPButton的方法来设置button控件的各种属性。

以下我们再来通过标准控件中的Custom Control来使用xtremetoolkitPro中更炫酷的控件了:

和上面的步骤一样。我们先加入两个Custom Control控件:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHAzMTAwMTg5MzE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

设置左边的Custom Control的ID 为 IDC_EDIT, Class为:CodejockSyntaxEditor (为什么要设为CodejockSyntaxEditor,我们到后在再说);

设置右边的Custom Control的ID为 IDC_CALENDAR, Class为:XTPCalendar(后面再讲为什么这样设置);

好了,我们再在testDlg.h中加入xtremetoolkit控件变量:

CXTPSyntaxEditCtrl m_wndDatePicker;

CXTPCalendarControl m_wndCalendar;

相同在testDlg.cpp中将控件变量与控件ID进行DDX绑定:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHAzMTAwMTg5MzE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

好了,编译执行结果例如以下:

能够看到XTTPButton与右边的确定。取消button是不同的。且加入消息响应也与标准控件和同样。

当然了,我们还能够再从这些xtremetoolkit控件类中派生新的类。来子类化我们自己的类。来为它加入很多其它的功能。

以下再说说上面Class的设置值是从哪里得来的:

首先请大家看看使用Custom Control的博文 :http://blog.csdn.net/hbxtlhx/article/details/3931663

这样我们就知道Class属性是我们注冊的窗体类的名字,好了,如今我们看看CXTPSyntaxEditCtrl.cpp的源代码:

我们搜索一下窗体注冊的那部分代码:

能够搜索找到以下这一段:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbHAzMTAwMTg5MzE=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="">

看到窗体注冊名是一个宏定义:XTP_EDIT_CLASSNAME_EDITCTRL

好了。以下我们要找的就是这个宏定义所代表的字符串了:

我们打开同一文件夹下的XTPSyntaxEditDefines.h文件

搜索得到例如以下结果:

能够看到该CXTPSyntaxEditCtrl控件的注冊名就是”CodejockSyntaxEditor“了。这就是为什么我们上面要将控件的Class的属性此值的原因了。

写这篇博文仅仅是想记录下来以便日后查阅,有什么写得不好的地方望各位大牛们指正,也给指引一下那些跟我一样的同志们更高速的学习。

作者:http://blog.csdn.net/lp310018931

版权声明:本文博客原创文章,博客,未经同意,不得转载。

在vc正在使用xtremetoolkit接口库-----使用简单的控制的更多相关文章

  1. 在vc中使用xtremetoolkit界面库-----安装及环境配置

    近期想用一下xtremetoolkitPro界面库.网上的使用教程资源也不多,当中着实遇到了很多的困难,毕竟是首次使用. 首先当然是配置发开环境了: 我使用的是vc6.0+xtremetoolkitP ...

  2. Python C/C++ 拓展使用接口库(build-in) ctypes 使用手册

    Python C/C++ 拓展使用接口库(build-in) ctypes 使用手册 ctypes 是一个Python 标准库中的一个库.为了实现调用 DLL,或者共享库等C数据类型而设计.它可以把这 ...

  3. VC中加载LIB库文件的三种方法

    VC中加载LIB库文件的三种方法 在VC中加载LIB文件的三种方法如下: 方法1:LIB文件直接加入到工程文件列表中   在VC中打开File View一页,选中工程名,单击鼠标右键,然后选中&quo ...

  4. 使用远程接口库进一步扩展Robot Framework的测试能力

    引言: Robot Framework的四层结构已经极大的提高了它的扩展性.我们可以使用它丰富的扩展库来完成大部分测试工作.可是碰到下面两种情况,仅靠四层结构就不好使了: 1.有些复杂的测试可能跨越多 ...

  5. RobotFrameWork接口项目分层及通用控制方式

    1. 前言 上一篇文章介绍了在设计接口用例之前应遵守的设计规范,详见<RobotFramework接口设计规范>,当然读者公司的内部规范也不一定非得完全遵循笔者所提到的,适合自己公司内部的 ...

  6. 我的Android进阶之旅】GitHub 上排名前 100 的 Android 开源库进行简单的介绍

    GitHub Android Libraries Top 100 简介 本文转载于:https://github.com/Freelander/Android_Data/blob/master/And ...

  7. python网络爬虫(三)requests库的13个控制访问参数及简单案例

    酱酱~小编又来啦~

  8. seldom 2.0 让接口自动化测试更简单

    前言 HTTP接口测试很简单,不管工具.框架.还是平台,只要很的好的几个点就是好工具. 测试数据问题:比如删除接口,重复执行还能保持结果一致,必定要做数据初始化. 接口依赖问题:B接口依赖A的返回值, ...

  9. spi接口的ds1302时钟芯片控制在lcd1602上显示

    spi接口的ds1302时钟芯片控制在lcd1602上显示                                                                        ...

随机推荐

  1. virtio-netdev 发送数据包

    在前面几文中已经大体介绍了virtio的重要组成,包含virtio net设备的创建,vring的创建,与virtio设备的交互方式.我们就从网络数据包的发送角度来看下virtio的详细使用流程. [ ...

  2. Hdu 3341 Lost&#39;s revenge (ac+自己主动机dp+hash)

    标题效果: 举个很多种DNA弦,每个字符串值值至1.最后,一个长字符串.要安排你最后一次另一个字符串,使其没事子值和最大. IDEAS: 首先easy我们的想法是想搜索的!管她3721..直接一个字符 ...

  3. ** poj Y2K Accounting Bug 2586

    Y2K Accounting Bug Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 10117   Accepted: 50 ...

  4. rhel5.8 ISO yum源配置

    [root@lei1 mnt]# mkdir /mnt/iso [root@lei1 mnt]# mkdir /mnt/cdrom [root@lei1 ~]# mv rhel-server-5.8- ...

  5. Metatable和Metamethod(转)

    Metatable和Metamethod是用来干啥的?它们可以使得表a和b的表达式“a + b”变得有意义,其中metatable使两个不相关的表a和b之间可以进行操作,而操作的具体行为比如说&quo ...

  6. 发现SQL Server惊天大秘密!!

    原文:发现SQL Server惊天大秘密!! --set statistics xml onCREATE TABLE T_TEST(ID INT IDENTITY PRIMARY KEY,Create ...

  7. 一个用于每一天JavaScript示例-使用缓存计算(memoization)为了提高应用程序性能

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  8. 【Java基础】“数三退一”问题的代码实现

    现在有500个小孩,编号为0-499,手牵手连成一个圈,从第一个小孩开始"123123..."报数,数到三的小孩退出,求剩下的最后一个小孩的编号. public static vo ...

  9. 【cocos2d-js官方文档】二十五、Cocos2d-JS v3.0中的单例对象

    为何将单例模式移除 在Cocos2d-JS v3.0之前.全部API差点儿都是从Cocos2d-x中移植过来的,这是Cocos2d生态圈统一性的重要一环.可惜的是,这样的统一性也在非常大程度上限制了C ...

  10. Android+NDK+CDT+eclipse+OPenGL ES编制和native调试

    周围环境: NDK版本号r8,eclipse和Android运用adt-bundle-windows-x86打包版本是更方便, 一.NDK汇集 1.源代码 NDK的examples文件夹中有Hello ...