windows/mfc 隐藏窗口接受消息的问题

实现隐藏窗口 的显示

我要实现的功能是 程序一直将窗口隐藏起来,当接收到其他程序发送过来的消息之后 就显示,执行任务,完成之后继续隐藏起来。
所以 设置显示标记s_bShow

OnPaint 函数//实现 根据s_bShow来显示和隐藏界面

    if(g_snShow == 0)
    {
        ShowWindow(SW_HIDE);
        return;
    }

    //do work
    s_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消息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值