vc响应最大化最小化按钮的事件或消息 .

方法一。在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;   
  }

你可能感兴趣的:(vc响应最大化最小化按钮的事件或消息 .)