Win32屏幕//小球移动,屏幕坐标函数,屏幕句柄,以及重绘函数

 我来答
bd_zwj
2012-03-11 · TA获得超过161个赞
知道小有建树答主
回答量:256
采纳率:0%
帮助的人:241万
展开全部
1、在WM_CREATE/WM_INITDIALOG 消息中设置一个定时器。
2、在定时器中修改小球坐标,并InvalidateRect刷新屏衫稿幕
3、处理WM_ERASEBKGND消息事件,并返回1
4、核谨处理WM_PAINT 消息事件, 使用双缓冲,先依据坐标将小球绘制内容改塌基绘制到一张图片,然后将图片内容直接BITBLT 到PAINTDC 中。

整个绘制流程完毕
更多追问追答
追问
屏幕坐标函数
屏幕句柄
屏幕绘图用?
PAINTSTRUCT obj={0};
HDC hDC=BeginPaint(hWnd,&obj);
HPEN nPen=CreatePen(PS_DASH,6,RGB(192,168,026));
追答
struct CPos { int x; int y; };

class xxxx : public cdialog
{
CPos m_pos;

OnTimer(...)
{
if (id == xxx) { m_pos.x = xxx; m_pos.y =xxx; invalidaterect(NULL) } // 这块的坐标你自己按照算法定义
}
OnEraseBkgnd(xxx) { return 1; }
OnPaint(....)
{
CPaintDC dc(m_hWnd);
CRect rc;
GetClientRect(&rc);
CImage image;
image.create(rc.width(),rc.height(),32);
HDC hDC = image.getdc();
// .... 绘制小球到 hDC
image.ReleaseDC();
image.BitBlt(dc,0,0); // 将位图绘制到PAINTDC
}
};

以上代码只是一个伪代码。 你依据这个进行修改就可以了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式