您的位置:首页 > 其它

vc响应最大化、最小化按钮

2009-10-30 14:21 399 查看
 

方法一。在OnSize消息事件中处理

最小化 SIZE_MINIMIZED,
最大化 SIZE_MAXIMIZED,
还原 SIZE_RESTORED,

例如:

void CMainDlg::OnSize(UINT nType, int cx, int cy)
{
CDialog::OnSize(nType, cx, cy);

// TODO: Add your message handler code here
//::SendMessage(g_hMain,WM_FORM_RESIZE,0,0);
if   (nType== SIZE_MAXIMIZED)    
{  
//在这里添加最小化需要处理的事件
         // ::SendMessage(g_hMain,WM_FORM_RESIZE,0,0);
}
if   (nType==SIZE_RESTORED)    
{  
//在这里添加还原时需要处理的事件
        // ::SendMessage(g_hMain,WM_FORM_RESIZE,0,0);
}
}

方法二

在OnSysCommand中处理  
nID   =   SC_MAXIMIZE   是最大化  
nID   =   SC_MINIMIZE   是最小化

 

 

方法三:

一般情况下是在消息处理过程中进行判断,如:  
LRESULT   CALLBACK   WndProc(HWND   hWnd,   UINT   msg,   WPARAM   wParam,   LPARAM   lParam)  
{  
          switch(msg)  
          {  
                  case   WM_DESTROY:  
                          //   响应代码  
                  break;  
                  case   WM_GETMINMAXINFO:     //   lParam返回一个指向MINMAXINFO结构的指针  
                          //   响应代码  
                  break;  
                  default:  
                          return   DefWindowProc(hWnd,   msg,   wParam,   lParam);  
          }  
          return   0;  
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  callback
相关文章推荐