C++中
消息的处理
1.AFX_msg
在头文件(DrawView.h)中声明消息响应函数原型。
//{{AFX_MSG(CDrawView) // 注释宏
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
//}}AFX_MSG //注释宏
说明:
在注释宏之间的声明在VC中灰色显示。 afx_msg宏表示声明的是一个消息响应函数
//{{AFX_MSG(CDrawView) // 注释宏
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
//}}AFX_MSG //注释宏
说明:
在注释宏之间的声明在VC中灰色显示。 afx_msg宏表示声明的是一个消息响应函数
例如:afx_msg void OnBnClickedButton1(); 其中 afx_msg为消息标志,它向系统声明:有消息映射到函数实现体;而在map
宏定义中,就有具体消息和此函数的映射定义(可以是自定义,也可以是系统自动完成的)。
afx是 application framework
afx是 application framework
2.如定义一个Edit的Change处理函数:
一、在类的头文件(*.h)中增加 :
//{{AFX_MSG(CDialogDemo)
afx_msg void OnChangeEdit1();
//}}AFX_MSG
二、在类的实现文件(*.cpp)中增加:
1.消息定义( ON_EN_CHANGE):
BEGIN_MESSAGE_MAP(CDialogDemo, CDialog)
//{{AFX_MSG_MAP()
ON_EN_CHANGE(IDC_EDIT1, OnChangeEdit1)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
2.执行函数:
void CDialogDemo::OnChangeEdit1()
{
// TODO: Add your control notification handler code here
……
}