wtl重绘CMainFrame只有CWindowDC有效

imlmy 2011-06-17 11:11:16
我想重绘CMainFrame界面,重载OnPaint事件,和OnEraseBkgnd事件,只有CWindowDC绘图有效,其他如CClientDC,CPaintDC,CDC绘图都没有效果。或者直接使用OnEraseBkgnd的wParame参数转换为HDC进行绘图也无效。请问是什么原因
...全文
83 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
向立天 2011-06-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 imlmy 的回复:]

我试过用CPaintDC,但是绘图无效。只有CWindowDC才能绘出图。我看到CView里面可以用其他DC进行绘图。是不是CMainFrame的问题。
[/Quote]就看你这么描述
天知道是真么回事
估计你程序是基于文档视图结构的
应该处理OnDraw才对
再就是你最好看看不同dc的区别
imlmy 2011-06-21
  • 打赏
  • 举报
回复
我试过用CPaintDC,但是绘图无效。只有CWindowDC才能绘出图。我看到CView里面可以用其他DC进行绘图。是不是CMainFrame的问题。
向立天 2011-06-21
  • 打赏
  • 举报
回复
只能说你用错了
在OnPaint里就因该用CPaintDC
imlmy 2011-06-21
  • 打赏
  • 举报
回复
没人回复,自己顶

15,979

社区成员

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

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