VC按最小化、关闭按钮、Esc都隐藏主窗口
VC按最小化、关闭按钮、Esc都隐藏主窗口
郭剑波 发表于1年前
VC按最小化、关闭按钮、Esc都隐藏主窗口
  • 发表于 1年前
  • 阅读 4
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   

VC按最小化、关闭按钮、Esc键都隐藏主窗口,在托盘处程序图标的右键菜单中点击,显示主窗口。

1. 按最小化时隐藏主窗口:为窗口添加WM_SIZE消息响应函数

 

[cpp] view plain copy

  1. void CdDlg::OnSize(UINT nType, int cx, int cy)  
  2. {  
  3.     CDialogEx::OnSize(nType, cx, cy);  
  4.   
  5.     if(nType == SIZE_MINIMIZED)  
  6.         ShowWindow(SW_HIDE);  
  7. }  


2. 按窗口的关闭按钮,隐藏主窗口:为窗口添加WM_CLOSE消息响应函数

 

 

[cpp] view plain copy

  1. void CdDlg::OnClose()  
  2. {  
  3.     ShowWindow(SW_HIDE);  
  4.   
  5.     //CDialogEx::OnClose();                                 // 阻止消息继续传递  
  6. }  

 

3. 按Esc键,隐藏主窗口:重载窗口的PreTranslateMessage()函数

 

[cpp] view plain copy

  1. BOOL CdDlg::PreTranslateMessage(MSG* pMsg)  
  2. {  
  3.     if(pMsg->message == WM_KEYDOWN)  
  4.     {  
  5.         if(pMsg->wParam == VK_ESCAPE)  
  6.         {  
  7.             ShowWindow(SW_HIDE);  
  8.             return TRUE;  
  9.         }  
  10.     }  
  11.   
  12.     return CDialogEx::PreTranslateMessage(pMsg);  
  13. }  


4. 右击托盘处程序图标,在弹出菜单中点击“显示主窗口”菜单项,弹出主窗口(实际上就是该菜单项的响应函数)

 

 

[cpp] view plain copy

  1. void CdDlg::OnShowMainwindow()  
  2. {  
  3.     ShowWindow(SW_SHOWNORMAL);  
  4.     SetForegroundWindow();  
  5. }  
共有 人打赏支持
粉丝 0
博文 8
码字总数 808
×
郭剑波
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: