救赎但不重生 发表于 2015-5-12 18:57:34

SendMessage的问题

case WM_COMMAND:
        hWndRve=FindWindow(NULL,"haha-记事本");
      MessageBox(hwnd,"哈哈","嘻嘻",MB_OK);
      SendMessage(hWndRve,WM_DESTROY,0,0);
        break;


{:9_241:}

为什么不能用这段代码关闭记事本窗口呢

救赎但不重生 发表于 2015-5-14 16:49:18

本帖最后由 救赎但不重生 于 2015-5-14 16:53 编辑

{:9_231:}

康小泡 发表于 2015-5-13 16:24:31

WM_COMMAND 那个没有具体化,就比如说你是在按了一个button键后关闭,但是你没有把这个按下button的这个消息发给它,所以他不做任何反应

零度C 发表于 2015-5-14 00:37:13

本帖最后由 零度C 于 2015-5-14 02:00 编辑

没有对这 MessageBox(hwnd,"哈哈","嘻嘻",MB_OK);消息返回值处理,中断了



;:lol:新手观点,不喜勿喷

海血冰_-128℃ 发表于 2015-5-14 08:45:42

WM_CLOSE

救赎但不重生 发表于 2015-5-14 16:53:23

kklloo 发表于 2015-5-13 16:24
WM_COMMAND 那个没有具体化,就比如说你是在按了一个button键后关闭,但是你没有把这个按下button的这个消 ...
HWND hWndRve;
      
switch(message)
{
case WM_CREATE:
hwndButton = CreateWindow(
"BUTTON",
"按钮",WS_VISIBLE | WS_CHILD | BS_DEFPUSHBUTTON,
15,      
135,      
300,   
70,      
hwnd,      
NULL,      
(HINSTANCE) GetWindowLong(hwnd, GWL_HINSTANCE),
NULL
);   
case   WM_PAINT:                                                   
hdc = BeginPaint (hwnd, &ps) ;                                       // 绘制窗口                                 
GetClientRect (hwnd, &rect) ;                                    // 取得窗口显示区域的大小                                    
EndPaint (hwnd, &ps) ;
return 0 ;

               
      if(hWndRve!=0)
      {
      hWndRve=FindWindow
(
NULL,
"haha-记事本"
);

      PostMessage(hWndRve,WM_DESTROY,0,0);

      MessageBox(hwnd,"哈哈","嘻嘻",MB_OK);
      return 1;
      };
      

      break;

PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd,message,wParam,lParam);
}
return 0;
}

溯月0503 发表于 2015-5-25 18:02:12

{:1_1:}

溯月0503 发表于 2015-5-26 10:44:50

{:1_1:}
页: [1]
查看完整版本: SendMessage的问题