RT,以前一直用非选项卡的MFC项目,现在用了一个带选项卡的项目,发现默认的菜单里边没有提供传统非选项卡的窗口排列菜单,并且我拿来框架指针pFrame来调用MDITile()也没用。试过了::PostMessage(.......)也没用。我看vs2008集成环境里有“水平排列选项卡”和“垂直排列选项卡”的选项,那这个排列是什么代码实现的呢?多谢各位。

解决方案 »

  1.   

    ::SendMessage(((CMainFrame*)AfxGetMainWnd())->m_hWndMDIClient, WM_MDICASCADE, 0, 0);
    -----------------------------------------------------
    ::SendMessage(((CMainFrame*)AfxGetMainWnd())->m_hWndMDIClient, WM_MDIICONARRANGE, 0, 0);
      

  2.   

    CMDIFrameWnd::OnMDIWindowCmd();函数里处理窗口层叠样式;
    摘自MSDN中的一段ID_WINDOW_ARRANGE   Arranges icons at the bottom of an MDI window. CMDIFrameWnd implements this standard MDI command in an implementation helper function OnMDIWindowCmd. This helper maps command IDs to MDI Windows messages and can therefore share a lot of code. 
      

  3.   

    什么是选项卡窗口,CTabCtrl这个玩意???
      

  4.   

    CMDIFrameWnd::OnMDIWindowCmd();函数里处理窗口层叠样式;
    摘自MSDN中的一段ID_WINDOW_ARRANGE Arranges icons at the bottom of an MDI window.  CMDIFrameWnd implements this standard MDI command in an implementation helper function OnMDIWindowCmd. This helper maps command IDs to MDI Windows messages and can therefore share a lot of code.