VC++动态显示鼠标当前坐标,高手进。。。

2024年11月15日 02:49
有3个网友回答
网友(1):

在OnMouseMove()函数中,加入以下代码

static CRect rectpt;// 静态CRect保存上一次输出文本的包围矩形
InvalidateRect(&rectpt,TRUE);
UpdateWindow();

CDC* pDC=GetDC();
CString strpt;
strpt.Format("%d,%d",point.x,point.y);
pDC->TextOut(point.x,point.y,strpt);
rectpt=CRect(point.x,point.y,point.x+strpt.GetLength()*12,point.y+20);// 这里的12和20都是估算,应该根据实际的字体大小和宽度进行赋值

网友(2):

你可以只刷新上次TextOut的区域,用InvalidateRect来弄.这样整个屏幕就不会都刷新,不会闪烁厉害.

网友(3):

可不可以这样

不要用textout,改用一个透明的文本框

通过movewindow实现跟随鼠标