您的位置:首页 > 其它

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

2013-08-10 09:31 344 查看
方法一。在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;

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: