为什么不能在WM_CREATE中绘制

本文探讨了为什么在Windows消息处理中,TextOut函数在WM_CREATE消息下无法正确显示绘制内容,而在WM_PAINT消息下则能正常工作。原因包括WM_CREATE执行仅一次且绘制会被后续WM_PAINT清除,窗口句柄在WM_CREATE时可能未生效,以及WM_CREATE时缺乏必要的绘制环境。
摘要由CSDN通过智能技术生成

问题:

case WM_CREATE:
  TextOut(hdc,10,53,TEXT("OKOK"),4);//这条语句不能打印出结果,即不可见
  return 0;

case WM_PAINT :
  hdc=BeginPaint(hwnd,&ps);
  TextOut(hdc,10,53,TEXT("OKOK"),4);//这条语句可以正确打印结果
  EndPaint(hwnd,&ps);
  return 0;

如下,为什么TextOut(hdc,10,53,TEXT("OKOK"),4);这条语句必须要放在WM_PAINT :这个消息下才有正确的执行结果,在屏上打印字符,而放在WM_CREATE:消息下无任何反应呢?


答:

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值