对话框怎么像菜单一样,当鼠标点击对话框以外的界面的时候,就自动隐藏或者关闭

对话框如何像菜单一样,当鼠标点击对话框以外的界面的时候,就自动隐藏或者关闭?
如题?

我想利用对话框上放置控件方便的优势,又想利用cmenu自动隐藏的功能,就像windows的开始菜单一样。

有一种方案,从CDialog和CMenu派生一个子类,不知道可行否?
愿闻大家高见,少走弯路。出招有分。

------解决方案--------------------
增加一个WM_KILLFOCUS的消息处理函数,然后增加:

ShowWindow(SW_HIDE);就可以了
------解决方案--------------------
在控件失去焦点的消息函数处理,或隐藏或最小化
------解决方案--------------------
嘿嘿
你怎么显示回来…………
还要加托盘图标或热键了
------解决方案--------------------
增加一个WM_KILLFOCUS的消息处理函数,然后增加:

ShowWindow(SW_HIDE);就可以了

------解决方案--------------------
创建非模态对话框,
-------------------------------------
CXXXDlg *pDlg=new CXXXdlg;
pDlg-> Create(IDD_XXXXXX);
-------------------------------------
判断鼠标位置,
如在对话框外,则ShowWindow(SW_HIDE);