WM_PAINT消息处理和重绘奇怪问题[请高手解答,暂时无分,以后报答] 我用SDK创建了一个窗口。我在窗口中绘图。当对WM_PAINT消息进行缺省处理时,发现“窗口被覆盖后,绘图没有了;但窗口移动或更改大小,绘图却不变” (问题1:WM_PAINT消息是在什么情况下激发?即什么时候需重绘?)当我在WM_PAINT消息处理添加简单代码时: RECT rect; GetWindowRect(hwnd,&rect); ValidateRect(hwnd,&rect);问题仍旧。问题2: 怎样使窗口需重绘时,绘图不被破坏?谢谢。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1. 那为什么我在拖动窗口时,绘图并未消失呢?而覆盖时却消失呢?2. 画图是在其他消息驱动下绘制的,如果在WM_PAINT消息处理里重新绘制,我怎么记得我先前进行了哪些绘图操作呢? 1,我认为是窗口移动时,系统并没有发送重绘消息给应用程序,由系统完成该窗口的移动。而窗口更改大小会重绘啊...我每次都重绘了。2,把绘图放到ondraw中。 SDK没有WM_DRAW消息吧?其他的消息处理函数都要调用OnDraw? 如果用MFC,当系统发出的WM_PAINT消息是由OnPaint响应的,OnDraw是由OnPaint调用的,一般将绘图代码放在OnDraw函数中。也可以建一个memory context将所绘的东西先放在里面,刷新窗口时将其中的内容输出到屏幕。 大神求救,CReBar 控件的装载问题!(间距过大和大小被改变) Visual Studio 2010运行一个简单程序出错 自己编写开发控件程序无法运行 问大家一个问题:c里宏有效作用域是从定义处到源文件结尾,那么在windows程序中。。。 高手请进:消息的问题 需要了解,网络虚拟终端(NVT)详细定义 在那里可以下载ssl的开发包? 请问用VC怎样编译windows程序 请问 DWORD a('@@@@'); 为什么也能编译通过? 向各位高手求助,VC运行程序时出现这样的错误是怎么回事!急。。。。 简单问题,但我不懂,高手求救,急急 寻几何校正或辐射校正算法
1. 那为什么我在拖动窗口时,绘图并未消失呢?而覆盖时却消失呢?2. 画图是在其他消息驱动下绘制的,如果在WM_PAINT消息处理里重新绘制,我怎么记得我先前进行了哪些绘图操作呢?
而窗口更改大小会重绘啊...我每次都重绘了。
2,把绘图放到ondraw中。
其他的消息处理函数都要调用OnDraw?