首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

win32怎么从一个窗口发送消息到另一个窗口并使其关闭

2012-08-24 
win32如何从一个窗口发送消息到另一个窗口并使其关闭?如下代码成功创建2个窗口hwndChild CreateWindow (

win32如何从一个窗口发送消息到另一个窗口并使其关闭?
如下代码成功创建2个窗口
hwndChild = CreateWindow (szChildClass, NULL,
  WS_CHILDWINDOW |WS_VSCROLL |WS_VISIBLE | WS_BORDER,
  0, (int)MainWindowHeight*0.15, (int)MainWindowWidth*0.8, (int)MainWindowHeight*0.85,
  hWnd, (HMENU) room_ChildID,
  (HINSTANCE) GetWindowLong (hWnd, GWL_HINSTANCE),
  NULL) ;
hwndinfoChild = CreateWindow (szinfoChildClass, NULL,
  WS_CHILDWINDOW | WS_VSCROLL | WS_VISIBLE | WS_BORDER,
  (int)MainWindowWidth*0.8, (int)MainWindowHeight*0.15, (int)MainWindowWidth*0.2, (int)MainWindowHeight*0.85,
  hWnd, (HMENU) info_ChildID,
  (HINSTANCE) GetWindowLong (hWnd, GWL_HINSTANCE),
  NULL) ; 



一个窗口:SendMessage(hwndinfoChild, MY_DESTROY , 0, 0);

另一个窗口:case MY_DESTROY :
MessageBox (NULL, TEXT ("TEST TEST!"), 
  TEXT("Room"), MB_ICONERROR);
 
  DestroyWindow(hwndinfoChild);
return 0 ;

通过MessageBox可以确认已经收到了消息,但窗口关闭不了,程序也不出错。求指导。谢谢!

[解决办法]
处理WM_CLOSE事件呀
::SendMessage(对方窗体句柄,WM_CLOSE,NULL,NULL);
应该就可以了


当然如果你需要再做点什么事情可以自定义事件
this->close();
[解决办法]
感谢,学习学习.
[解决办法]
处理WM_CLOSE事件呀,获得对方窗体句柄用SendMessage应该就可以了
[解决办法]
WM_CLOSE
[解决办法]
标准窗口发送WM_CLOSE消息就可以关闭窗口了
[解决办法]
DestroyWindow 应该可以关闭窗口啊,是不是父窗口没有刷新引起的
UpdateWindow 或 RedrawWindow 强制刷新下试试看
[解决办法]
FindWindow找到窗口句柄 -》PostMessage/SendMessage发送WM_CLOSE消息
[解决办法]
给窗口发送WM_CLOSE就行了

热点排行