为什么该WM_PAINI消息没能让窗口重绘?

    switch(message)    { caseWM_CHAR:&nb...      switch (message)     {  case WM_CHAR:   hdc = GetDC(hwnd);   TextOut(hdc,1,1,"   ",3);      sprintf(str,"%c",(char)wParam);   TextOut(hdc,1,1,str,strlen(str));      ReleaseDC(hwnd,hdc);   break;       case WM_PAINT:        hdc =  BeginPaint (hwnd, &ps) ;       TextOut(hdc,1,1,str,strlen(str));          EndPaint (hwnd, &ps) ;          return 0 ;  case WM_DESTROY:   PostQuitMessage(0);   break;                   }解释一下~   最好讲清楚!     谢谢 展开
 我来答
丨花自飘零丨
2012-02-23 · TA获得超过598个赞
知道小有建树答主
回答量:417
采纳率:0%
帮助的人:352万
展开全部
case WM_PAINT:
HDC hDC;
PAINTSTRUCT ps;
hDC = BeginPaint(hwnd,&ps);
TextOut(hDC,0,50,"www.baidu.com",strlen("www.baidu.com"));
EndPaint(hwnd,&ps);
break;
你对比看下吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
七月流光1
2012-02-23 · TA获得超过528个赞
知道小有建树答主
回答量:339
采纳率:100%
帮助的人:186万
展开全部
在wm_char消息的break;前面加上一句InvalidateRect(hwnd,NULL,TRUE);来是客户区无效,这时系统会产生一个wm_paint消息,true参数指定要重画客户区。如果不加入这个函数,即使你输入了东西,但是窗口没有重画,故不会在窗口中显示效果。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式