【MFC】ON_CONTROL_RANGE用法

问题

多个编辑框的EN_KILLFOCUS响应事件的处理,需要用到ON_CONTROL_RANGE。

 

定义

ON_CONTROL_RANGE定义。

#define ON_CONTROL_RANGE(wNotifyCode, id, idLast, memberFxn) \
	{ WM_COMMAND, (WORD)wNotifyCode, (WORD)id, (WORD)idLast, AfxSigCmd_RANGE, \
		(AFX_PMSG) \
		(static_cast< void (AFX_MSG_CALL CCmdTarget::*)(UINT) > (memberFxn)) },

响应函数只有一个UINT的参数,其实就是控件ID。

 

使用方法

1、响应函数的声明与定义。

protected:
	afx_msg void		OnEnKillfocusChannelFreq(UINT nId);
void CSA858::OnEnKillfocusChannelFreq(UINT nId)
{
    //添加你的处理
}

 

2、消息映射

BEGIN_MESSAGE_MAP(CTest, CDialog)
	ON_CONTROL_RANGE(EN_KILLFOCUS, IDC_CHANNEL01, IDC_CHANNEL16, &CTest::OnEnKillfocusChannelFreq)
END_MESSAGE_MAP()

 

你可能感兴趣的:(MFC,MFC,CONTROL,RANGE,批处理)