创建内存双缓冲DC, 例如, CPaintDC dc(this); CDC* pDC; CBitmap bitmap; pDC->CreateCompatibleDC(&dc); // 创建一个内存兼容的dc bitmap.CreateCompatibleBitmap(&dc, m_rect.Width(), m_rect.Height());……
创建一个和背景尺寸大小相同的CBitmap 把你的背景画在这个CBitmap 当你需要重绘背景时 就把这张位图贴上去
引用 4 楼 SunShineBoys1234567 的回复:创建内存双缓冲DC, 例如, CPaintDC dc(this); CDC* pDC; CBitmap bitmap; pDC->CreateCompatibleDC(&dc); // 创建一个内存兼容的dc bitmap.CreateCompatibleBitmap(&am……
画图一般是双缓冲绘图 创建一个memdc,把要画的背景先画到这上面,然后每次更新,把memdc复制到屏幕hdc (这个方法你搜一搜,代码很多) ---------- 不过你的问题,应该不是这么解决。 有一种位操作叫异或运算;同样绘图也有一种方式叫异或绘制 用 SetROP2(R2_XORPEN), 你绘制完坐标线后,当更新鼠标位置,重新绘制新的坐标……
15,978
社区成员
115,896
社区内容
加载中
试试用AI创作助手写篇文章吧