给通过代码创建的控件关联消息映射

来源:互联网 发布:通过大数据分析 编辑:程序博客网 时间:2024/06/05 20:03


1,自创建一个控件

//以下代码创建树型控件
 if (!m_wndTree.Create(WS_CHILD|WS_VISIBLE|
  TVS_HASLINES|TVS_HASBUTTONS|TVS_LINESATROOT,
  //CRect(0, 0, 0, 0), &m_TabCtrl, IDC_MYTREECTRL))
  CRect(0, 0, 0, 0), &m_TabCtrl, IDC_TREE1))  //关联一个id,用于消息映射
 {
  TRACE0("Failed to create instant bar child\n");
  return -1;
 }


2,创建控件时与一个id IDC_TREE1关联,(IDC_TREE1在resource.h中定义 #define IDC_TREE1  1000//tree control)

 

3,下面是定义消息映射

头文件中,afx_msg void OnNMDblclkTree1(NMHDR *pNMHDR, LRESULT *pResult);

cpp文件中,BEGIN_MESSAGE_MAP中加入 ON_NOTIFY(NM_DBLCLK, IDC_TREE1, &CMainFrame::OnNMDblclkTree1)

 

4,添加实现方法
void CMainFrame::OnNMDblclkTree1(NMHDR *pNMHDR, LRESULT *pResult)
{
 // TODO: 在此添加控件通知处理程序代码
 
 HTREEITEM m_htreeitem;
   
 m_htreeitem = m_wndTree.GetSelectedItem();
 CString str = m_wndTree.GetItemText(m_htreeitem);
 AfxMessageBox(str);  //"seleted " +
    *pResult = 0;

}

以上是在CMainFrame中为一个在代码中创建的控件添加消息的操作(该控件为树形控件,添加鼠标左键双击事件响应)

 

 

原创粉丝点击