在vc正在使用xtremetoolkit接口库-----使用简单的控制
首先,我们需要在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接口库-----使用简单的控制的更多相关文章
- 在vc中使用xtremetoolkit界面库-----安装及环境配置
近期想用一下xtremetoolkitPro界面库.网上的使用教程资源也不多,当中着实遇到了很多的困难,毕竟是首次使用. 首先当然是配置发开环境了: 我使用的是vc6.0+xtremetoolkitP ...
- Python C/C++ 拓展使用接口库(build-in) ctypes 使用手册
Python C/C++ 拓展使用接口库(build-in) ctypes 使用手册 ctypes 是一个Python 标准库中的一个库.为了实现调用 DLL,或者共享库等C数据类型而设计.它可以把这 ...
- VC中加载LIB库文件的三种方法
VC中加载LIB库文件的三种方法 在VC中加载LIB文件的三种方法如下: 方法1:LIB文件直接加入到工程文件列表中 在VC中打开File View一页,选中工程名,单击鼠标右键,然后选中&quo ...
- 使用远程接口库进一步扩展Robot Framework的测试能力
引言: Robot Framework的四层结构已经极大的提高了它的扩展性.我们可以使用它丰富的扩展库来完成大部分测试工作.可是碰到下面两种情况,仅靠四层结构就不好使了: 1.有些复杂的测试可能跨越多 ...
- RobotFrameWork接口项目分层及通用控制方式
1. 前言 上一篇文章介绍了在设计接口用例之前应遵守的设计规范,详见<RobotFramework接口设计规范>,当然读者公司的内部规范也不一定非得完全遵循笔者所提到的,适合自己公司内部的 ...
- 我的Android进阶之旅】GitHub 上排名前 100 的 Android 开源库进行简单的介绍
GitHub Android Libraries Top 100 简介 本文转载于:https://github.com/Freelander/Android_Data/blob/master/And ...
- python网络爬虫(三)requests库的13个控制访问参数及简单案例
酱酱~小编又来啦~
- seldom 2.0 让接口自动化测试更简单
前言 HTTP接口测试很简单,不管工具.框架.还是平台,只要很的好的几个点就是好工具. 测试数据问题:比如删除接口,重复执行还能保持结果一致,必定要做数据初始化. 接口依赖问题:B接口依赖A的返回值, ...
- spi接口的ds1302时钟芯片控制在lcd1602上显示
spi接口的ds1302时钟芯片控制在lcd1602上显示 ...
随机推荐
- Android复制iPhone日期和时间选择器
看效果图 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGluZ2xvbmd4aW4yNA==/font/5a6L5L2T/fontsize/400/fi ...
- Apidemos-->Views-Lists-Cursor(people)学�
Apidemos-->Views-Lists-Cursor(people)-主要用到了获取手机联系人信息,属于内容提供者的范畴,要想了解这方面的内容,能够參考官方docs /sdk/docs/g ...
- BZOJ3362 [Usaco2004 Feb]Navigation Nightmare 导航噩梦
标题效果:自脑补. 思维:与维护两个维度和可设置为检查右. 注意,标题给予一堆关系的.我们应该加入两对关系. Code: #include <cstdio> #include <cs ...
- dwz 照片回头处理
我的要求.要选择封面文章,回头一看,实现,查找回头功能bringBack代码中发现的,它们朝着input 标签处理,所以img总是标签不能显示,这么dwz源所做的更改,于dwz.databases.j ...
- POJ 3009-Curling 2.0(DFS)
Curling 2.0 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 12158 Accepted: 5125 Desc ...
- 中颖电子AD操作
#define ADC_DIS 0 #define ADC_ENB 1 //ADC通道号定义 #define ADC_Chanel0 (unsigned char)(0x00<<1) #d ...
- FreeBSD包管理
FreeBSD软件没有安装Ubuntu的apt-get.它也不是Gentoo的portage.有三种方式: package ports 自主进行源代码编译安装 这里简介前两种. FreeBSD 6.0 ...
- Thread thread2 = new Thread()
Thread thread2 = new Thread() { @Override public void run() { test.function(); } }; thread1.start(); ...
- mongodb.conf
# mongodb.conf # Where to store the data. dbpath=/var/lib/mongodb #where to log logpath=/var/log/mon ...
- Java读书笔记三(字符串)
1.介绍 本篇博客将对JAVA中的字符串类的基本知识进行介绍.主要字符串类的一些经常用法等内容. 2.字符串对象的创建 1.有两种形式.可是在开发中常常习惯于String 变量名的形式来进行操作. & ...