您的位置:首页 > 移动开发

How to Create an Application that has Office Style

2007-07-25 15:25 363 查看
step 1:
#include <XTToolkitPro.h>

step 2:
change your base class to be CXTPMDIFrameWnd for MDI applications or CXTPFrameWnd for SDI applications:
class CMainFrame : public CXTPFrameWnd
{
...
};

step 3:
If you plan to override either PreTranslateMessage or OnWndMsg make sure that you call the CXTPFrameWnd or CXTPMDIFrameWnd base class, for example:
BOOL CMainFrame::PreTranslateMessage(MSG* pMsg)
{
return CXTPFrameWnd::PreTranslateMessage(pMsg);
}

BOOL CMainFrame::OnCmdMsg(UINT nID, int nCode,void* pExtra, AFX_CMDHANDLERINFO* pHandlerInfo)
{

return CXTPFrameWnd::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo);
}

step 4:
Add the following code to the int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) function:
int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CXTPFrameWnd::OnCreate(lpCreateStruct) == -1)
{
return -1;
}

if (!m_wndStatusBar.Create(this) ||!m_wndStatusBar.SetIndicators(indicators,sizeof(indicators)/sizeo(UINT)))
{
TRACE0("Failed to create status bar/n");
return -1;
}

if (!InitCommandBars())
{
return -1;
}

CXTPCommandBars* pCommandBars = GetCommandBars();
if(pCommandBars == NULL)
{
TRACE0("Failed to create command bars object./n");
return -1;
}

CXTPCommandBar* pMenuBar = pCommandBars->SetMenu(_T("Menu Bar"), IDR_MAINFRAME);
if(pMenuBar == NULL)
{
TRACE0("Failed to create menu bar./n");
return -1;
}

CXTPToolBar* pToolBar = (CXTPToolBar*)pCommandBars->Add(_T("Standard"),xtpBarTop);
if (!pToolBar || !pToolBar->LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar/n");
return -1;
}

// Set Office 2003 Theme
CXTPPaintManager::SetTheme(xtpThemeOffice2003);

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐