77范文网 - 专业文章范例文档资料分享平台

codejock英文教程

来源:网络收集 时间:2019-02-17 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

MFC/C++

Adding a docking pane to your application Author: Kirk Stowell

Posted: November 16, 2007 Environment:Visual C++ MFC

The following is a tutorial on how to create an MDI application with Docking Pane using the Visual Studio 6.0 Application Wizard. The same technique can be used for later versions of Visual Studio . NET as well.

Create a simple MDI application using the MFC AppWizard:

? ?

From Visual Studio select ‘File’ then ‘New’ and select the ‘Projects’ tab.

Choose MFC Appwizard(exe) as your project type and enter ‘MDISample’ as the

project name.

? For the first step, make sure that \‘Finish’ button.

Add Empty Docking Pane ? Add the following line to your StdAfx.h file: Xtreme Toolkit Pro users:

#include // Xtreme Toolkit Pro components Xtreme DockingPane users:

#include // Xtreme DockingPane components

?

Add CXTPDockingPaneManager member to CMainFrame class.

?

// Attributes public:

CXTPDockingPaneManager m_paneManager;

?

Add string resources for the titles of the future panes

?

IDR_PANE_OPTIONS 61446 Options

PROPERTIES 61447 Properties ?

??

Add following to CMainFrame::OnCreate.

// Initialize the docking pane manager and set the // initial them for the docking panes. Do

// this only after all control bars objects have been // created and docked.

m_paneManager.InstallDockingPanes(this); m_paneManager.SetTheme(xtpPaneThemeOffice);

// Create docking panes.

CXTPDockingPane* pwndPane1 = m_paneManager.CreatePane( IDR_PANE_OPTIONS, CRect(0, 0,200, 120), dockLeftOf); CXTPDockingPane* pwndPane2 = m_paneManager.CreatePane( IDR_PANE_PROPERTIES, CRect(0, 0,200, 120), dockBottomOf, pwndPane1);

Attach CWnd derived class to the panes: ?? Add Cwnd derived class as member of CMainFrame.

// Attributes public:

CStatic m_wndOptions; CEdit m_wndProperties;

Add OnDockingPaneNotify handler.

BEGIN_MESSAGE_MAP(CMainFrame, CMDIFrameWnd) //{{AFX_MSG_MAP(CMainFrame) ON_WM_CREATE()

//}}AFX_MSG_MAP

ON_MESSAGE(XTPWM_DOCKINGPANE_NOTIFY, OnDockingPaneNotify) END_MESSAGE_MAP()

LRESULT CMainFrame::OnDockingPaneNotify(WPARAM wParam, LPARAM lParam)

{

if (wParam == XTP_DPN_SHOWWINDOW) {

CXTPDockingPane* pPane =

(CXTPDockingPane*)lParam;

if (!pPane->IsValid())

{

switch (pPane->GetID()) {

case IDR_PANE_PROPERTIES: {

if (

m_wndProperties.GetSafeHwnd() == 0) {

m_wndProperties.Create(WS_CHILD| ES_AUTOVSCROLL|ES_MULTILINE, CRect(0, 0, 0, 0), this, 0); }

pPane->Attach(&m_wndProperties); break;

}

case IDR_PANE_OPTIONS:

{

if (m_wndOptions.GetSafeHwnd() == 0) {

m_wndOptions.Create(_T(\ WS_CHILD|WS_CLIPCHILDREN| WS_CLIPSIBLINGS|SS_CENTER, CRect(0, 0, 0, 0), this, 0); }

pPane->Attach(&m_wndOptions); break; }

} }

return TRUE; }

return FALSE; }

Add image to pane. ?? Create Bitmap with icons for created panes

??

Add to CMainFrame::OnCreate.

nt nIDIcons[] = {IDR_PANE_OPTIONS, IDR_PANE_PROPERTIES}; m_paneManager.SetIcons(IDB_BITMAP_ICONS, nIDIcons, _countof(nIDIcons), RGB(0, 255, 0));

Add Save/Load State

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库codejock英文教程在线全文阅读。

codejock英文教程.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/478878.html(转载请注明文章来源)
上一篇:-信息提示
下一篇:教书育人 关爱学生
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: