MFC鼠标点击事件

MFC全称Microsoft Foundation Classes,也就是微软基础类库。它是VC++的核心,是C++与Windows API的结合,很彻底的用C++封装了Windows SDK(Software Development Kit,软件开发工具包)中的结构和功能,还提供了一个应用程序框架,此应用程序框架为软件开发者完成了一些例行化的工作,比如各种窗口、工具栏、菜单的生成和管理等,不需要开发者再去解决那些很复杂很乏味的难题,比如每个窗口都要使用Windows API注册、生成与管理。这样就大大减少了软件开发者的工作量,提高了开发效率。

void CmousemessageDlg::ProcessMouseMessage(LPCTSTR lpszEvent, LPCTSTR lpszKey, const CPoint& point) {

	CString strMsg;
	strMsg.Format(_T("鼠标%s%s按下了,鼠标的坐标:%d,%d"), lpszKey, lpszEvent,point.x, point.y);
	SetDlgItemText(IDC_MOUSE_MESSAGE, strMsg);
}

 

void CmousemessageDlg::OnLButtonDblClk(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("双击"),_T("左键"),point);
	CDialogEx::OnLButtonDblClk(nFlags, point);
}

void CmousemessageDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("按下"), _T("左键"), point);
	CDialogEx::OnLButtonDown(nFlags, point);
}


void CmousemessageDlg::OnLButtonUp(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("松开"), _T("左键"), point);
	CDialogEx::OnLButtonUp(nFlags, point);
}

其余效果类似就不放图

鼠标右键事件

void CmousemessageDlg::OnRButtonDblClk(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("双击"), _T("右键"), point);
	CDialogEx::OnRButtonDblClk(nFlags, point);
}


void CmousemessageDlg::OnRButtonUp(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("松开"), _T("右键"), point);
	CDialogEx::OnRButtonUp(nFlags, point);
}


void CmousemessageDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("按下"), _T("右键"), point);
	CDialogEx::OnRButtonDown(nFlags, point);
}

 鼠标中键(滚轮)事件

void CmousemessageDlg::OnMButtonDblClk(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("双击"), _T("中键"), point);
	CDialogEx::OnMButtonDblClk(nFlags, point);
}


void CmousemessageDlg::OnMButtonDown(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("按下"), _T("中键"), point);
	CDialogEx::OnMButtonDown(nFlags, point);
}


void CmousemessageDlg::OnMButtonUp(UINT nFlags, CPoint point)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	ProcessMouseMessage(_T("松开"), _T("中键"), point);
	CDialogEx::OnMButtonUp(nFlags, point);
}

鼠标滚轮滚动事件

BOOL CmousemessageDlg::OnMouseWheel(UINT nFlags, short zDelta, CPoint pt)
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值
	if (zDelta<0) {
		ProcessMouseMessage(_T("向下滚动"), _T("滚轮"), pt);
	}
	else {
		ProcessMouseMessage(_T("向上滚动"), _T("滚轮"), pt);
	}
	return CDialogEx::OnMouseWheel(nFlags, zDelta, pt);
}
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

像向日葵一样~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值