如何用messagebox进行程序调试

bykai 2003-06-12 03:29:47
程序环境:win32Application中的HELLOWORD程序例子

我的想法:程序窗口收到一个WM_PAINT后就跳出来一个MESSAGEBOX显示PAINTSTRUCT中的RECT中的4个值中的任意一个,这个PS结构在窗口处理程序中用PS定义

得分要求:1请写出详细的程序;
     2请写出这个程序插入主程序中那个部分;
     3程序运行后要能达到我想要的功能;
     4请写出MESSAGEBOX各个参数以及含义;
     5如果用afxMessageBOx或其他方法同上
...全文
52 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bykai 2003-06-12
  • 打赏
  • 举报
回复
自己回答
_RPT4(0,"left=%d,top=%d,right=%d,bottom=%d \n",ps.rcPaint.left,ps.rcPaint.top,ps.rcPaint.right,ps.rcPaint.bottom);
思危 2003-06-12
  • 打赏
  • 举报
回复
你可以在WM_PAINT的响应函数中如下:
void myCWnd::OnPaint()
{
PAINTSTRUCT ps;
::BeginPaint(this->GetSafeHwnd(), &ps);
TRACE("rigth = %d, top = %d, left = %d, bottom = %d\n", ps.rcPaint.right, ps.rcPaint.top, ps.rcPaint.left, ps.rcPaint.bottom);
::EndPaint(this->GetSafeHwnd(), &ps);
}

按F5开始,在output窗口可以看到调试信息,有什么问题给我留言
思危 2003-06-12
  • 打赏
  • 举报
回复
MessageBox或AfxMessageBox调试只是用在Release版中TRACE无效是才用的,因为WM_PAINT消息非常频繁,MessageBox会打断程序的正常运行,无法实现正常的调试。
所以我建议你用TRACE来调试。
ydzqw 2003-06-12
  • 打赏
  • 举报
回复
hehe
本想回答,离要求有点远,闪了先
:)

16,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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