1、做模式对话,要用到这的一函数:
  LRESULT CEx07aView :: OnGoodbye ( WPARAM wParam, LPARAM lParam )
{    
     // TRACE 的输出在哪里能看到 ?
     TRACE("CEx07aView :: OnGoodbye %x, %x \n", wParam, lParam );
     TRACE("Dialog editl contents = %s \n", ( const char * )m_pDlg->m_strEdit );
     m_pDlg->DestroyWindow();     returnb 0L;   // 返回的是什么 ?
}    //  WM_GOODBYE 函数的作用是什么 ?2、在 ex07aDialog.h 中加入 :#define WM_GOODBYE  WM_USER + 5  
   应用程序框架使用了其中的几个消息,我们要跳过前面的5个消息。
  问:前面的几个消息是什么?
      WM_USER + 5 的作用是什么?

解决方案 »

  1.   

    TRACE 的输出在哪里能看到       -〉     debug 窗口
    returnb 0L;   // 返回的是什么  -〉     long型的0
    WM_GOODBYE 函数的作用是什么    -〉     销毁窗口前面的几个消息是什么?
    WM_USER + 5 的作用是什么?WM_USER以后的消息都是用户自定义的消息。
      

  2.   

    1.trace 是调试时输出的消息
    2 WM_USER + 5是自定义消息
    可以这样使用
    SendMessage(HWND,WM_GOODBYE,LPARAM,WPARAM);检测消息时
    switch(msg)
    {
    case WM_GOODBYE:
    break;
    }
      

  3.   

    1、做模式对话,要用到这的一函数:
      LRESULT CEx07aView :: OnGoodbye ( WPARAM wParam, LPARAM lParam )
    {    
         // TRACE 的输出在哪里能看到 ?
    //当程序Build->start debug->Go (F5)运行时在VC下面的debug窗口会出现
         TRACE("CEx07aView :: OnGoodbye %x, %x \n", wParam, lParam );
         TRACE("Dialog editl contents = %s \n", ( const char * )m_pDlg->m_strEdit );
         m_pDlg->DestroyWindow();     returnb 0L;   // 返回的是什么 ?
         //返回调用成功的信息
    }    //  WM_GOODBYE 函数的作用是什么 ?
        //自定义消息,响应此消息就是调用OnGoodbye2、在 ex07aDialog.h 中加入 :#define WM_GOODBYE  WM_USER + 5  
       应用程序框架使用了其中的几个消息,我们要跳过前面的5个消息。
      问:前面的几个消息是什么?
      //前面的消息没有定义,所以不可用。
          WM_USER + 5 的作用是什么?
    //WM的意思是Window Message,每个WM_×××都要占用系统资源,这里分配的系统资源是
      WM_USER + 5
    在winuser.h定义着WM_USER
    #define WM_USER                         0x0400