关于使用BitBlt()函数画动态图时,刷新跟不上的问题???
我今天做一个很简单的动画,就是用用定时器不断发送OnTimer消息来画图,就是想产生小球的移动效果,但结果是小球移动以后的轨迹会留下未刷新的小球的痕迹,是不是刷新跟不上的问题啊,该怎么解决啊?请大虾指教!
void CMainFrame::OnTimer(UINT nIDEvent)
{
dc.BitBlt(ball_x,ball_y,rect.right,rect.bottom,mdc,0,0,SRCCOPY);
ball_x+=ball_vx;
ball_y+=ball_vy;
if(ball_x>rect.right)
{
ball_vx=-ball_vx;
ball_x=rect.right-60;
}
if(ball_x<rect.left)
{
ball_vx=-ball_vx;
ball_x=60;
}
if(ball_y<0)
{
ball_vy=-ball_vy;
ball_y=60;
}
if(ball_y>rect.bottom)
{
ball_vy=-ball_vy;
ball_y=rect.bottom-60;
}
}