Windows GDI API画线问题
两个郁闷的问题1.我用API画出来的线怎么能让他总在屏幕最前。2.画出来的线会留下痕迹怎么清除他。大哥们知道的帮帮吧感谢...
两个郁闷的问题 1.我用API画出来的线怎么能让他总在屏幕最前。2.画出来的线会留下痕迹 怎么清除他。 大哥们知道的帮帮吧 感谢
展开
2013-04-10
展开全部
这两个问题都涉及到窗口重绘的问题1.我用API画出来的线怎么能让他总在屏幕最前。首先你要知道窗口绘制的顺序,最后绘制的会覆盖前面绘制的。一般来说先绘制父窗口背景,然后绘制父窗口上其他窗口(button这些也是有自己的窗口句柄的,它们也是窗口),在父窗口的某函数中或其OnPaint函数里面绘制的线条都会绘制到在父窗口的背景前面(覆盖父窗口背景相应部位)。但是很可能被父窗口上的子窗口覆盖,要想覆盖在子窗口上,你得在子窗口的函数或者其OnPaint函数中绘制。2.画出来的线会留下痕迹 怎么清除他这个其实不需要你清楚,系统是自动清除的,但是清除后为什么还能看到前面绘制的轨迹呢?是因为系统清除线条后还没有重绘,你就看到前面绘制的线条了。你可以在绘制完成后加上Invalidate(TURE)来请求重绘,或者利用ReDrawWindow函数来完成重绘。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询