首先,我们需要在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. 【PullToRefresh 系列基本用法】 Android装上拉下拉刷新控制具体的解释

    转载请注明:http://blog.csdn.net/duguang77/article/details/40921601 作者信息: Chris Banes大神详情:https://github.c ...

  2. 使用form的target属性屏蔽url跳

    target: 指定公开赛, action URL. 关键点: 让target指向隐藏的iframe demo: form.jsp <%@ page language="java&qu ...

  3. [LeetCode145]Binary Tree Postorder Traversal

    题目: Given a list, rotate the list to the right by k places, where k is non-negative. For example:Giv ...

  4. 弹出式菜单PopMenu

    MainActivity.java public class MainActivity extends Activity implements OnClickListener{ private Pop ...

  5. AFHTTPRequestOperationManager当一个网络请求加入菊花

    问: Can you help me to understand, how to use UIActivityIndicatorView+AFNetworking or UIProgressView+ ...

  6. 使用shell/python获取hostname/fqdn释疑(转)

    一直以来被Linux的hostname和fqdn(Fully Qualified Domain Name)困惑了好久,今天专门抽时间把它们的使用细节弄清了. 一.设置hostname/fqdn 在Li ...

  7. datatable1.9 与datatable1.10以数据差异

    我还探讨datatable1.10新用途,如果在下面的代码中的错误,欢迎.. 1.10与1.9解释官方网站之间的差异:http://www.datatables.net/upgrade/1.10 看代 ...

  8. tomcatserver乱码问题,tomcat与数据库之间的编码统一转换

    在tomcat文件夹的conf文件夹下,改动server.xml文件,在以下截图中的位置加上URIEncoding="UTF-8"则表示tomcat编码转换为utf-8风格, 一般 ...

  9. [Oracle] 分析功能(1)- 语法

    语法概览 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZGJhbm90ZQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQ ...

  10. AE 先进的视频画面 快速释放 慢动作

    视频画面细腻,或快速释放.慢速播放视频.其实很easy.在使用图层time中间Enable Time remapping能够.快捷键ctrl+alt+T债券,我无法使用,我没有深究. 在这一点上,在视 ...