MFC:为STATIC控件添加鼠标移动事件(VS2010)

本文详细介绍了如何在MFC中为STATIC控件添加鼠标移动事件,通过在VS2010环境下创建对话框,并实现OnMouseMove函数,当鼠标移到IDC_S1控件上时,IDC_S2将显示鼠标坐标。教程适合初学者,旨在帮助理解MFC事件处理。
摘要由CSDN通过智能技术生成

这个问题弄了我两天的时间,晕死~~~网上查资料的时候众说纷纭,绝大多数模棱两可的说了思路什么的,这叫初学者怎么活?

现在这里一步一步说怎么实现这个功能,这里我用的是一个对话框作为主窗口来实现的,实现当鼠标移动到Static text控件IDC_S1上时,在Static text控件IDC_S2上显示鼠标当前的坐标。

首先是添加对话框的头文件XXDlg.h,添加变量以及事件:

public:
        /****添加成员变量*******/
        CRect m_Rect;
        /*************/

protected:
        HICON m_hIcon;
        // 生成的消息映射函数
        virtual BOOL OnInitDialog();
        // afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
        afx_msg void OnPaint();
        afx_msg HCURSOR OnQueryDragIcon();
        //添加鼠标的鼠标移动事件 
        afx_msg void OnMouseMove(UINT nFlags, CPoint point);
        DECLARE_MESSAGE_MAP()
然后是XXDlg.cpp文件里面,在你的BOOL XXXDlg::OnInitDialog()函数中添加:

// TODO: 在此添加额外的初始化代码
	//鼠标移动事件m_static1是控件IDC_S1的变量,下面有截图,可以自己看
	m_static1.GetWindowRect(&m_Rect);
	//CWnd::GetWindowRect得到
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值