QQ登录

只需一步,快速开始

上位机MFC如何获得光标的坐标

[ 复制链接 ]
窗口在鼠标划过时,可以通过WM_MOUSEMOVE消息的处理函数,保存鼠标光标的坐标。
进而 在后续使用。
例如,定义一全局CPoint m_Point变量后,就可以在下面函数里保存。
void CGkbc8View::OnMouseMove(UINT nFlags, CPoint point)
{
        //保存光标坐标
        m_Point        = point;

        //刷新客户区
        Invalidate();
        CView::OnMouseMove(nFlags, point);
}


然后在其他地方使用
如绘制十字叉
void CGkbc8View::OnDraw(CDC* pDC)
{
        CGkbc8Doc* pDoc = GetDocument();
        ASSERT_VALID(pDoc);
        // TODO: add draw code for native data here
                //获得客户区坐标
        CRect rect;
        GetClientRect(rect);

        //绘制十字光标
        pDC->MoveTo(0, m_Point.y);
        pDC->LineTo(rect.Width(), m_Point.y);
        pDC->MoveTo(m_Point.x, 0);
        pDC->LineTo(m_Point.x, rect.Height());

        //输出光标坐标
        CString strText =_T("");
        strText.Format(_T("%d, %d"), m_Point.x, m_Point.y);
        pDC->SetBkMode(TRANSPARENT);
        pDC->SetTextAlign(TA_RIGHT | TA_BOTTOM);
        pDC->TextOut(m_Point.x, m_Point.y, strText);
}

上位机MFC如何获得光标的坐标

上位机MFC如何获得光标的坐标

源代码下载:
请点击此处下载

请先注册会员后在进行下载

已注册会员,请先登录后下载

文件名称:demo.rar 
文件大小:225.95 KB  售价:1金币
下载权限: 不限 以上或 VIP会员   [购买捐助会员]   [充值积分]   有问题联系我


回复

使用道具 举报

快速回复 返回列表 客服中心 搜索