给CMainFrame添加相应最大化菜单的OnFull()
{
m_wndToolBar.ShowWindow(SW_HIDE);
m_wndStatusBar.ShowWindow(SW_HIDE);
SetMenu(NULL);
LONG style=::GetWindowLong(m_hWnd,GWL_STYLE);
style&=~WS_CAPTION;
::SetWindowLong(m_hWnd,GWL_STYLE,style);
int screenx=GetSystemMetrics(SM_CXSCREEN);
int screeny=GetSystemMetrics(SM_CYSCREEN);
SetWindowPos(NULL,-4,-4,screenx+8,screeny+8,SWP_NOZORDER);
ShowWindow(SW_SHOWMAXIMIZED);
RecalcLayout();
}done

解决方案 »

  1.   

    TO kittity(kittity)
    窗口最大化以后,怎么恢复呢?
      

  2.   

    TO kittity(kittity)
    窗口最大化以后,怎么恢复呢?
      
      

  3.   

    把窗口设成topmost形式的。
      

  4.   

    高手!!帮我搞定一问题:
    http://www.csdn.net/Expert/topic/481/481464.shtm
      

  5.   

    m_lWndStyle = ::GetWindowLong(m_hWnd, GWL_STYLE);
    LONG tmpStyle = m_lWndStyle & ~WS_OVERLAPPEDWINDOW;
    int cx = ::GetSystemMetrics(SM_CXSCREEN);
    int cy = ::GetSystemMetrics(SM_CYSCREEN);
    ::SetWindowLong(m_hWnd, GWL_STYLE, tmpStyle);
    ::SetWindowPos(m_hWnd, HWND_TOPMOST, -1, -1, cx + 1, cy + 1, SWP_FRAMECHANGED);
                                                                 ~~~~~~~~~~~~~~~~
                                                                 注意这个标志
      

  6.   

    不好意思,我已经知道了,是一个工作区的问题。
    sam1111(化神奇为腐朽) 可能对的,我用SystemParameterInfo(SPI_SETWORKAREA....)也可以的。 不过多谢 kittity 上个问题的提示,我才在 MSDN 上找到相关的资料。 呵呵,送分了........................