以下讨论一些窗口的控制问题。也许对初学者很有用。
(1)主窗口最大化。程序启动后,窗口最大化。
     可以用下列代码实现。在app.cpp中
      的pMainFrame->ShowWindow(m_nCmdShow);后加上
      pMainFrame->ShowWindow(SW_SHOWMAXIMIZED);
      可以实现。
(2)对于多文档来说,它的子窗口有如何最大化呢?
     请提供代码。
(3)添加窗口标题。
     很多初学者知道用下列代码
     CFrameWnd* pWnd=GetParentFrame();
     pWnd->SetWindowText(Title); 
     来添加窗口自己的标题,但发现表现得很不稳定,其实需要在childfrm.cpp中的PreCreateWindow加上下列代码:
    BOOL CChildFrame::PreCreateWindow(CREATESTRUCT& cs)
   {
// TODO: Modify the Window class or styles here by modifying
//  the CREATESTRUCT cs
         cs.style &= ~(LONG) FWS_ADDTOTITLE;
if( !CMDIChildWnd::PreCreateWindow(cs) )
return FALSE;
return TRUE;
  }
  就OK啦。
  
  谁能回答第二个问题。

解决方案 »

  1.   

    void CChildFrame::ActivateFrame(int nCmdShow) 
    {
    CMDIChildWnd::ActivateFrame(SW_SHOWMAXIMIZED);
    }
      

  2.   

    #include <afxwin.h>
    class My:public CFrameWnd
    {public:
     afx_msg void OnPaint()
     {CPaintDCpaintDC(this);
     paintDC.TextOut(0,0,"这是我的第一个窗口");
     }
     DECLARE_MESSAGE_MAP()
    };
    BEGIN_MESSAGE_MAP(My,DFrameWnd)
    ON_WM_PAINT()
    END_MESSAGE_MAP()
    class Hello:public CWinApp
    { public:
      Hello():CWinApp("Hello World!")
      {}
      BOOL InitInstance()
      { CFrameWnd *My=new My;
      m_pMainWnd=My;
      My->Create (NULL,(LPCTSTR)"Hello");
      My->ShowWindow (SW_SHWO);
      return TRUE;
      }
    } HelloWorld; 
    运行时出错,在最后行,我不知道怎么发表新文章就我样发了请回信至:[email protected]
    谢谢!