参考
这几天刚接触Xtreme,最开始发现上手挺麻烦的,资料也不是很多,用了会之后发现其实还是满好用的,有UserGuide和实例代码之后,一些基本想要实现的效果就OK了
最开始从官网下载的12.1.0试用版安装之后Deployment安装有问题-_,-还好后来到csdn下载到了标准版,里面还有源码,之前的问题也没了。嘎嘎
第一个做的实例是Create an application with office style toolbar,按UserGuide基本就可以了,唯一注意的是把IDR_MIDSAMTYPE改为IDR_MAINFRAME,否则会报编译错。
我的项目里面使用Ogre作为渲染引擎,但是在已经有了的OgreMFC框架里面只要加上#include"XTToolkitPro.h"就报些奇怪的错误:
正在编译...
stdafx.cpp
d:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v12.0.0\Source\Common\XTPVC50Helpers.h(569) : error C2514: “LONG” : 类没有构造函数
d:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\PlatformSDK\Include\WinNT.h(259) : 参见“LONG”的声明
d:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v12.0.0\Source\Common\XTPVC50Helpers.h(569) : error C3861: “min”: 即使使用参数相关的查找,也未找到标识符
d:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v12.0.0\Source\Common\XTPVC50Helpers.h(569) : error C3861: “max”: 即使使用参数相关的查找,也未找到标识符
d:\Program Files\Codejock Software\MFC\Xtreme ToolkitPro v12.0.0\Source\Controls\XTMaskEdit.h(37) : fatal error C1903: 无法从以前的错误中恢复;正在停止编译
于是建个MFC的SDI框架慢慢尝试,只在stdafx.h中添加这两个头文件"XTToolkitPro.h","Ogre.h",但就是这样都会报错。
之后颠倒了两个头文件的顺序之后报堆栈大小限制。
倒是这个堆栈限制提醒了我,估计有可能是预编译头里的东西太多了,然后发生些奇怪的问题。索性就只在stdafx.h里包含"XTToolkitPro.h",而"Ogre.h"只在需要的头文件中包含(当然要用define宏来防止重复包含)。果然OK了!
之后着重看了DockingPanel的代码,按Guide的来也就差不多了,不过有个小问题就是icon图标。icon大小必须为16*16,有几个图标那么图标文件就是16n*16,不能多也不能少,否则运行期错误
Panel的用处很多,可以显示View,Dlg还有其他一些乱七八糟的控件。如果做View的话必须重新写一个CXXView类继承自CView类。这个工作量还是挺大的,不过小心点的话也没太多难度。
“时间紧,任务多,定计划,保完成”
牢记这四句话,寒假前顺利完成项目!