WM_ACTIVATE窗口激活消息
2016-05-28 12:05
531 查看
消息: WM_ACTIVATE
参数:
fActive = LOWORD(wParam); // activation flag
fMinimized = (BOOL)HIWORD(wParam); // minimized flag
hwndPrevious= (HWND)lParam; // window handle
fActive 参数表明窗口是被激活还是被取消。该信息保存在 wParam 的低阶字中,可以取以下的值:
WA_CLICKACTIVE 通过鼠标单击激活了该窗口
WA_ACTIVE 通过鼠标以外的工具(如键盘)激活了该窗口
WA_INACTIVE 取消该窗口的激活
fMinimized 参数表明窗口是否为最小化状态。该信息保存在 wParam 的高阶字中,非0表示最小化,0表示不是最小化
hwndPrevious 参数表示其他窗口句柄,根据fActive参数的不同含义不同,fActive为激活时hwndPrevious表示上一个激活的窗口句柄,
fActive为失去激活时hwndPrevious表示下一个激活的窗口句柄,注意hwndPrevious可能为NULL,
该信息保存在 lParam中。
示例代码:
代码作用为当窗口失去激活时判断下一个窗口是否是同类的窗口,是的话设置一个标志
void CThreadDlg::OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized)
{
CDialog::OnActivate(nState, pWndOther, bMinimized);
if (WA_INACTIVE == nState)//失去激活
{
if (NULL != pWndOther)
{
if (pWndOther->IsKindOf(RUNTIME_CLASS(CThreadDlg)))
{
m_bFirstCall = false;
}
}
}
else //激活
{
m_bFirstCall = true;
}
}
参数:
fActive = LOWORD(wParam); // activation flag
fMinimized = (BOOL)HIWORD(wParam); // minimized flag
hwndPrevious= (HWND)lParam; // window handle
fActive 参数表明窗口是被激活还是被取消。该信息保存在 wParam 的低阶字中,可以取以下的值:
WA_CLICKACTIVE 通过鼠标单击激活了该窗口
WA_ACTIVE 通过鼠标以外的工具(如键盘)激活了该窗口
WA_INACTIVE 取消该窗口的激活
fMinimized 参数表明窗口是否为最小化状态。该信息保存在 wParam 的高阶字中,非0表示最小化,0表示不是最小化
hwndPrevious 参数表示其他窗口句柄,根据fActive参数的不同含义不同,fActive为激活时hwndPrevious表示上一个激活的窗口句柄,
fActive为失去激活时hwndPrevious表示下一个激活的窗口句柄,注意hwndPrevious可能为NULL,
该信息保存在 lParam中。
示例代码:
代码作用为当窗口失去激活时判断下一个窗口是否是同类的窗口,是的话设置一个标志
void CThreadDlg::OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized)
{
CDialog::OnActivate(nState, pWndOther, bMinimized);
if (WA_INACTIVE == nState)//失去激活
{
if (NULL != pWndOther)
{
if (pWndOther->IsKindOf(RUNTIME_CLASS(CThreadDlg)))
{
m_bFirstCall = false;
}
}
}
else //激活
{
m_bFirstCall = true;
}
}
相关文章推荐
- 解决在WM_ACTIVATE中调用ShowWindow有时会无效的我问题
- pulltorefresh的用法以及message传值
- Android进阶专题十:界面布局优化
- Lnmp环境下对接工行B2C支付
- 用C语言测试计算机大小端问题
- 华为OLT设备EPON/GPON混插管理
- cmake 资料
- 对Android的Opengl ES 中setLookAtM函数的一点理解
- 5 Ways to Learn and Remember Absolutely Anything
- CF Bear and Game
- 数组的基础知识
- 【LeetCode】103. Binary Tree Zigzag Level Order Traversal 解题报告
- Hibernate包及相关工具包下载地址
- Android进阶专题九:电池续航
- poj 1860 汇率2
- tomcat常见错误及解决方案
- SSH输入错误Action
- Android SlidingMenu 使用
- Android中的事件分发
- iOS开发之手势识别汇总