API 图片跟随鼠标移动时不断闪烁
向上下移动时上下闪烁,左右移动时左右闪烁,感觉貌似是图片不能准确定位所以造成不断重绘,导致闪烁。
但是实现的逻辑上又看不出什么问题,不知道哪里出现了差错,完全不知怎样改
关于图片跟随鼠标移动有些什么好的方法实现,只用API GDI实现,不用MFC
puzz[pt.x][pt.y].x&y 是图片的左上角坐标
LOWORD(lParam)-HIWORD(lParam) 就是鼠标当前坐标
puzz[pt.x][pt.y].m_pt.x&y 是上一次点击图片时鼠标的坐标
HDWP hdwp = BeginDeferWindowPos(1);
puzz[pt.x][pt.y].x +=LOWORD(lParam)-puzz[pt.x][pt.y].m_pt.x;
puzz[pt.x][pt.y].y +=HIWORD(lParam)-puzz[pt.x][pt.y].m_pt.y;
hdwp = DeferWindowPos( hdwp, hWnd, NULL,
puzz[pt.x][pt.y].x,
puzz[pt.x][pt.y].y,
0, 0,
SWP_SHOWWINDOW | SWP_NOZORDER | /*SWP_NOREDRAW |*/
SWP_NOSIZE );
EndDeferWindowPos( hdwp );
[解决办法]
前后两次坐标不变的话就没必要重绘了吧。
[解决办法]