听说用控件数组用OM_COMMAND_RANGE,但具体怎么用?请大家指点,写的具体点,最好有个实例,谢谢
解决方案 »
- VS2008 ON_THREAD_MESSAGE 报错?
- visual studio 2008自动成员列表不显示?!!
- 一个比较怪的控件运行问题?大家给指导一下
- 别了VC++ 我的大老婆
- SetLayeredWindowAttributes设置窗体的问题
- VC制作的软件界面上鼠标指针可以改为动画鼠标吗?即后缀是.ani的鼠标指针。
- 在VC中通过什么途径可以修改系统的网络设置,如IP地址,网关等等。。。
- 高分请教:怎么计算当前的时间段的平均网络流量.
- 请问COM、和ATL指的是什么?具体应用是什么呢?谢谢!
- mfc是c++的垃圾??
- VC++程序,加入远程读取数据的问题,希望帮教,谢谢!
- 求救,关于bmp文件格式问题,在线等待!
2、 定义消息是用DECLARE_MESSAGE_MAP(),同样这个宏将为类带来三个成员:
* 一个类开为AFX_MSGMAP_ENTRY的名为_messageEntries的private数组。
* 一个AFX_MSGMAP类型,名为messageMap的指向_messageEntries的protected的指针。
*一个protected virtual的GetMessageMap,返回值为messageMap的地址。
3、 常见定义消息映射的方式:
--------------------------------------------------------------------------------
格式 ClassWizard 备注
--------------------------------------------------------------------------------
ON_MESSAGE(ID, memberFxn) N ID的范围在WM_USER-----0x7fff之间
--------------------------------------------------------------------------------
ON_REGISTERED_MESSAGE(nMessageVariable, memberFxn )
N
NMessageVariable是通过RegisterWindowMessage来注册的,且范围在0xC000 to 0xFFFF。
--------------------------------------------------------------------------------
ON_COMMAND(id, memberFxn) Y
--------------------------------------------------------------------------------
ON_COMMAND_EX(id,memberFxn) N
响应函数返回必需为BOOL,返回TRUE表示响就顾此消息,反之系统将消息伟给下一个对象。
--------------------------------------------------------------------------------
ON_UPDATE_COMMAND_UI(id, memberFxn) Y
--------------------------------------------------------------------------------
ON_COMMAND_RANGE ( id1, id2, memberFxn) N 处理一组消息
--------------------------------------------------------------------------------
ON_COMMAND_RANGE_EX N
--------------------------------------------------------------------------------
ON_CONTROL(wNotificationCode, id, memberFxn) N
WNotifyCode是通告代码(如:BN_CLICK),id为控件的ID。用于响应自定义控件的通知消息。
--------------------------------------------------------------------------------
ON_CONTROL_RANGE( wNotifyCode, id1, id2, memberFxn )
N 同上
--------------------------------------------------------------------------------
ON_NOTIFY( wNotifyCode, id, memberFxn ) Y 主要用于响应通用控件的通告消息
--------------------------------------------------------------------------------
ON_NOTIFY_RANGE( wNotifyCode, id, idLast, memberFxn )
N 同上
ON_COMMAND_RANGE(ID_EDIT_FIRST, ID_EDIT_LAST, OnEditCommand)void CMyEdit::OnEditCommand(UINT nID)
{
m_editMenuHandler.OnEditCommand(nID);
}