高分!!!关于自建立窗口。

houmingyang 2004-11-09 06:05:20
在一个主窗口里有个按扭
按下按扭 弹出一 Dialog CAAADialog
在Dialog里有一个自建窗口
(
类型为:
class CAAAWnd : public CWnd
{
}
)

BOOL CAAADialog::OnInitDialog()
{ //dxMsgEdit 为 CAAAWnd 是 CAAADialog 的数据成员
dxMsgEdit.CreateEx( NULL,
NULL,
NULL,
WS_CHILD|WS_VISIBLE,
CRect(5,43,363,233),
this,
100);
CDialog::OnInitDialog();
return 1;
}
这个窗口里面没添加任何东西。只是响应了 OnPaint OnCreate
在OnPaint里 暂时什么都不画。

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

问题。在我按下按扭。弹出 Dialog 后 CPU 就 100% 了
一把 自建窗口了的 WM_ON_PAINT 注析了
//WM_ON_PAINT
就是不响应 OnPaint 了
就什么问题都没有

高手请指点 急 答出 100 全给你
。。。。。。。。。。。。。。。。
...全文
109 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
definegg 2004-11-15
  • 打赏
  • 举报
回复
OnCreate()里添加了什么,是它的问题,你注释掉内部你添加的代码,看看吧!
xdsh00 2004-11-13
  • 打赏
  • 举报
回复
楼上的好像有点道理
星羽 2004-11-13
  • 打赏
  • 举报
回复
CPU 百分百
原因是 不断刷新了
在OnPaint了
不要用CClientDC
要用CPaintDC
guoliangzhu2002 2004-11-09
  • 打赏
  • 举报
回复
把注释去掉,在OnPaint的实现里加上CPaintDC dc(this)应该就可以了
camelyi 2004-11-09
  • 打赏
  • 举报
回复
回复人: guoliangzhu2002() ( ) 信誉:100

在OnPaint里有没有CPaintDC dc(this);这句一定得要


同意这个,CPaintDC析构的时候会删除队列中的WM_PAINT消息,没有这句的话将不停调用OnPaint
guoliangzhu2002 2004-11-09
  • 打赏
  • 举报
回复
你在消息映射里把ON_WM_PAINT()给注释了,当然不响应你写的OnPaint函数了.
houmingyang 2004-11-09
  • 打赏
  • 举报
回复
为什么不响应 OnPaint 如何改
houmingyang 2004-11-09
  • 打赏
  • 举报
回复
高手帮帮咯
guoliangzhu2002 2004-11-09
  • 打赏
  • 举报
回复
在OnPaint里有没有CPaintDC dc(this);这句一定得要
houmingyang 2004-11-09
  • 打赏
  • 举报
回复
upupup
houmingyang 2004-11-09
  • 打赏
  • 举报
回复
up up up

15,979

社区成员

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

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