MFC 给列表控件发送左键单击、双击、以及右键单击消息

void CTestsetting::SendClickToList()
{
	NMITEMACTIVATE NMItemActive;
	NMHDR thdr;
	thdr.code = NM_CLICK;					//NM_CLICK单击	NM_DBLCKL 双击  NM_RCLICK右键单击
	thdr.hwndFrom = m_TestsetList.m_hWnd;	//m_TestList是列表控件关联的变量
	thdr.idFrom = IDC_TESTSETTING_LIST;		//IDC_TESTSETTING_LIST  列表控件ID
	NMItemActive.hdr = thdr;
	NMItemActive.iItem = m_TestsetList.GetItemCount();
	NMItemActive.iItem = 0;					//设置选中第几行
	NMItemActive.iSubItem = 1;				//设置选中第几列
	m_TestsetList.SetSelectionMark(0);
	SendMessage(WM_NOTIFY, IDC_TESTSETTING_LIST, (LPARAM)&NMItemActive);	//把消息发送给列表所在地父窗口,由父窗口转发,而不是直接转发给列表
}

添加列表左键单击响应函数

void CTestsetting::OnNMClickTestsettingList(NMHDR* pNMHDR, LRESULT* pResult)
{
	//因为是测试所以是随便写的变量
	LPNMITEMACTIVATE temp = (LPNMITEMACTIVATE)pNMHDR;//将传进来的消息转换成LPNMITEMACTIVAT
	int nItem = temp->iItem;//获得行号
	int nSubItem = temp->iSubItem;//获得列号
	TRACE("%d, %d\n", nItem, nSubItem);
	*pResult = 0;
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值