MFC实现获取鼠标位置的小程序

如图(VS2013编译)
这里写图片描述
按下空格键程序会暂停

关键代码:
在OnInitDialog()函数中设置一个timer,每0.5秒调用一次
SetTimer(1, 500, NULL);

void CMFCApplication3Dlg::OnTimer(UINT_PTR nIDEvent)//实现OnTimer函数
{
    // TODO:  在此添加消息处理程序代码和/或调用默认值
    //OnPaint();
    //CDialogEx::OnTimer(nIDEvent);
    if (pause == 0)//空格可以实现程序的暂停
    {
        POINT   p;
        ::GetCursorPos(&p);//获取鼠标坐标
        CString s;
        CFont font;
        font.CreateFont(60, 40, 0, 0, 1200,
            TRUE, FALSE, FALSE, 0, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_ROMAN, _T("Arial"));
        s.Format(_T("X:%d,Y:%d"), p.x, p.y);//格式化
        hPos.SetFont(&font);
        hPos.SetWindowTextW(s);//设置文本
    }


}

void CMFCApplication3Dlg::OnChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
    // TODO:  在此添加消息处理程序代码和/或调用默认值
    if (nChar == ' ')
    {
        pause = ~pause;//设置标记变量,实现空格键暂停
    }
    //CDialogEx::OnChar(nChar, nRepCnt, nFlags);
}

程序及源码下载:https://pan.baidu.com/s/1nhrz7GvmLQ_9u3UZrpyu3A

猜你喜欢

转载自blog.csdn.net/cosmopolitanme/article/details/80463890