本文主要是介绍windows/mfc 隐藏窗口接受消息的问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
实现隐藏窗口 的显示
我要实现的功能是 程序一直将窗口隐藏起来,当接收到其他程序发送过来的消息之后 就显示,执行任务,完成之后继续隐藏起来。
所以 设置显示标记s_bShow
OnPaint 函数//实现 根据s_bShow来显示和隐藏界面
if(g_snShow == 0){ShowWindow(SW_HIDE);return;}//do works_bShow =false;ShowWindow(SW_HIDE);
OnSize
实现接受其他程序发送过来的任务消息,然后显示窗口,置位s_bShow 同时通知WM_PAINT消息
ShowWindow(SW_SHOW);
s_bShow = true;
::SetWindowPos(this->m_hWnd,
HWND_TOPMOST,g_rect.left,g_rect.top,nWidth,nHeight,SWP_NOACTIVATE);
ShowInTaskbar(this->m_hWnd,FALSE);
Invalidate(TRUE);
隐藏窗口 的坑
1、隐藏窗口 能接受WM_SIZE消息,但是不能接收WM_PAINT消息
所以在OnSize 里面就必须 调用 ShowWindow(SW_SHOW); 才能使窗口收到_WM_PAINT消息
这篇关于windows/mfc 隐藏窗口接受消息的问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!