2024年5月7日发(作者:)
XTToolkitPro使用初探
一. 创建MFC的SDI或MDI应用程序
在stdafx.h添加 #include
CMainFrame基类,对应为CXTPMDIFrameWnd
class CMainFrame : public CXTPFrameWnd
修改CMainFrame::OnCreate函数 注释掉原有的,添加下列代码
if (!InitCommandBars())
return -1;
CXTPCommandBars* pCommandBars = GetCommandBars();
if(pCommandBars == NULL)
{
TRACE0("Failed to create command bars object.n");
return -1; // fail to create
}
CXTPCommandBar* pMenuBar = pCommandBars->SetMenu( _T("Menu Bar"), IDR_MAINFRAME);
if(pMenuBar == NULL)
{
TRACE0("Failed to create menu bar.n");
return -1; // fail to create
} CXTPToolBar* pToolBar = (CXTPToolBar*)pCommandBars->Add(_T("Standard"), xtpBarTop);
if (!pToolBar || !pToolBar->LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbarn");
return -1;
}
CXTPPaintManager::SetTheme(xtpThemeOffice2003);编译运行,出现Offiice 2003主题风格的
应用程序 资源包含,查看rc2资源文件代码,添加,在资源附加目录中添加
所在目录使用的时候,只需要在StdAfx.h中加入下面的语句即可
#include
如果你选择static link,那么可以使用宏把不需要的部分排除掉,这样能减少最终生成的EXE的大小
//#define _XTP_EXCLUDE_COMMON
#define _XTP_EXCLUDE_TABMANAGER
#define _XTP_EXCLUDE_GRAPHICLIBRARY
//#define _XTP_EXCLUDE_CONTROLS
//#define _XTP_EXCLUDE_COMMANDBARS
//#define _XTP_EXCLUDE_DOCKINGPANE
//#define _XTP_EXCLUDE_PROPERTYGRID
#define _XTP_EXCLUDE_REPORTCONTROL
#define _XTP_EXCLUDE_CALENDAR
#define _XTP_EXCLUDE_TASKPANEL
#define _XTP_EXCLUDE_SHORTCUTBAR
#define _XTP_EXCLUDE_SKINFRAMEWORK
#define _XTP_EXCLUDE_RIBBON
#define _XTP_EXCLUDE_SYNTAXEDIT
另外值得注意的一点是,如果你选择static link,那么需要将XTP的资源导入你的工程之中。比如
要使用中文资源,那么把下面的代码加入工程的rc2文件的最后
#define _XTP_RESOURCE_LANGUAGE zh_CN
#include <>
同时,你还需要修改一下XTP附带的中的内容
将最后的LANGUAGE_DEFAULT(TaskPanel)改成LANGUAGE_LOCALIZED(TaskPanel)
然后在TaskPanelres目录下将复制成Resource_zh_,并将其中的编码改成中文
#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_CHS)
#ifdef _WIN32
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
#pragma code_page(936)
#endif //_WIN32
#endif
否则你之后include的资源会变成默认的英文
发布评论