VC++开发GIS系统(71)响应CTreeCtrl右键菜单的函数

在文章《VC++开发GIS系统(67)工程面板CTreeCtrl响应右键菜单》和《VC++开发GIS系统(68)不同节点加载不同右键菜单》中我们已经实现了关于CTreeCtrl的右键菜单。今天要介绍的内容是响应菜单中的函数。在面板中开发不像其他地方可以直接在资源视图中自动添加代码,这里全部要手动实现,具体方法如下:

定义函数

在PrjManage.h中定义函数,比如本文定义新建工程的函数

protected:
    afx_msg void OnNewPrj();

绑定菜单ID

将函数和资源视图中新建工程的ID绑定起来,如图:

在PrjManage.cpp开头找到下面的代码

BEGIN_MESSAGE_MAP(CPrjManage, CDockablePane)
    ON_WM_CREATE()
    ON_WM_SIZE()
    ON_WM_CONTEXTMENU()
    ON_COMMAND(ID_PROPERTIES, OnProperties)
    ON_COMMAND(ID_OPEN, OnFileOpen)
    ON_COMMAND(ID_OPEN_WITH, OnFileOpenWith)
    ON_COMMAND(ID_DUMMY_COMPILE, OnDummyCompile)
    ON_COMMAND(ID_EDIT_CUT, OnEditCut)
    ON_COMMAND(ID_EDIT_COPY, OnEditCopy)
    ON_COMMAND(ID_EDIT_CLEAR, OnEditClear)
    ON_COMMAND(ID_NEW_PRJ, OnNewPrj)//这里绑定
    ON_WM_PAINT()
    ON_WM_SETFOCUS()
END_MESSAGE_MAP()

实现响应

在PrjManage.cpp中实现OnNewPrj函数,代码如下:

/*
* 新建工程
*/
void CPrjManage::OnNewPrj()
{
    MessageBox(L"新建工程", L"提示", MB_ICONASTERISK);
}

详细代码可以参考:GitHub

VC++开发GIS系统(70)补充知识MFC中CFileDialog的使用 VC++开发GIS系统(72)导出新建工程对话框

作者:,GIS爱好者。
分享本文,请您带上本文链接
分享到:

发表评论