WM_PAINT中怎样在有效区画图

answerboyboy 2011-08-05 12:26:59
在调用InvalidateRect 建立一个无效区后,发觉自己WM_PAINT中的无效区并不能够完全满足画图,就是说要在有效区中画图,但是实现不了这个功能,请问怎样才能实现?就是在有效区中画图?难道在WM_PAINT当中调用InvalidateRect 再建立一个无效区?但是试过不行啊
...全文
109 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-08-18
  • 打赏
  • 举报
回复
您好
我是本版版主
此帖已多日无人关注
请您及时结帖
如您认为问题没有解决可按无满意结帖处理
另外本版设置了疑难问题汇总帖
并已在版面置顶
相关规定其帖子中有说明
您可以根据规定提交您帖子的链接
如您目前不想结帖只需回帖说明
我们会删除此结帖通知

见此回复三日内无回应
我们将强制结帖
相关规定详见界面界面版关于版主结帖工作的具体办法
gz_qmc 2011-08-08
  • 打赏
  • 举报
回复
InvalidateRgn
JJF 2011-08-07
  • 打赏
  • 举报
回复
先用RedrawWindow()函数试试
upc_xiaowei 2011-08-07
  • 打赏
  • 举报
回复
invalidate(NULL)会产生wm_paint消息,然后这个wm_paint消息会立即执行,不是队列消息。
Iv3 2011-08-07
  • 打赏
  • 举报
回复
rect太小 实在不行换invalidate试试 不过这个影响效率 不建议使用 还是看看你的rect是多少 可能要换算的
schlafenhamster 2011-08-07
  • 打赏
  • 举报
回复
可以“在WM_PAINT 当中调用 ValidateRect 建立一个有效区。”
gz_qmc 2011-08-06
  • 打赏
  • 举报
回复
InvalidateRgn
就叫我海 2011-08-06
  • 打赏
  • 举报
回复
区域太小了吧,
Eleven 2011-08-05
  • 打赏
  • 举报
回复
要做什么?
jackytse_ 2011-08-05
  • 打赏
  • 举报
回复
我也没看懂你说的什么,你传入InvalidateRect的Rect太小了是这个意思?
Wang471981125 2011-08-05
  • 打赏
  • 举报
回复
[Quote=引用楼主 answerboyboy 的回复:]
在调用InvalidateRect 建立一个无效区后,发觉自己WM_PAINT中的无效区并不能够完全满足画图,就是说要在有效区中画图,但是实现不了这个功能,请问怎样才能实现?就是在有效区中画图?难道在WM_PAINT当中调用InvalidateRect 再建立一个无效区?但是试过不行啊
[/Quote]
在OnPaint()函数外部调用InvalidateRect()函数,会产生WM_PAINT消息进行绘图
向立天 2011-08-05
  • 打赏
  • 举报
回复
你想干嘛
zgl7903 2011-08-05
  • 打赏
  • 举报
回复
BeginPaint ?
GetClientRect ?
辰岡墨竹 2011-08-05
  • 打赏
  • 举报
回复
配个截图吧,不明白你说什么。既然你自己建立的无效区,区域大小也是你自己定的吧,怎么会不够呢?

15,978

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧