龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VC开发 >

使用VC6.0实现窗口的任意分割(5)

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
//下面加注释的将从程序中删去。 //CView* pView = (CView*)GetActivePane(); //if (pView != NULL pView-IsKindOf(RUNTIME_CLASS(CView))) //{ // ASSERT_VALID(pView); // CFrameWnd* pFrameWnd = G
          
          //下面加注释的将从程序中删去。
          //CView* pView = (CView*)GetActivePane();
          //if (pView != NULL && pView->IsKindOf(RUNTIME_CLASS(CView)))
          //{
          // ASSERT_VALID(pView);
          // CFrameWnd* pFrameWnd = GetParentFrame();
          //ASSERT_VALID(pFrameWnd);
          //pView->OnActivateFrame(WA_INACTIVE, pFrameWnd);
          // }
          // steal focus and capture
                  SetCapture();
                  SetFocus();
                  // make sure no updates are pending
                  RedrawWindow(NULL, NULL, RDW_ALLCHILDREN | RDW_UPDATENOW);
         
                  // set tracking state and appropriate cursor
                  m_bTracking = TRUE;
                  OnInvertTracker(m_rectTracker);
                  if (m_bTracking2)
                          OnInvertTracker(m_rectTracker2);
                  m_htTrack = ht;
                  SetSplitCursor(ht);
}
         
BOOL CxSplitterWnd::OnCommand(WPARAM wParam, LPARAM lParam)
{
                  if (CWnd::OnCommand(wParam, lParam))
                          return TRUE;
                  //下面粗体的是原程序的语句
          //return GetParentFrame()->SendMessage(WM_COMMAND, wParam, lParam);
         
                  return GetParent()->SendMessage(WM_COMMAND, wParam, lParam);
         
}
BOOL CxSplitterWnd::OnNotify( WPARAM wParam, LPARAM lParam, LRESULT* pResult )
{
                  if (CWnd::OnNotify(wParam, lParam, pResult))
                          return TRUE;
                  //下面粗体的是源程序的语句
                  //*pResult = GetParentFrame()->SendMessage(WM_NOTIFY,
          wParam, lParam);
                  *pResult = GetParent()->SendMessage(WM_NOTIFY, wParam, lParam);
                  return TRUE;
}
         
BOOL CxSplitterWnd::OnWndMsg(UINT message, WPARAM wParam, LPARAM lParam, LRESULT* pResult)
{
                  // The code line below is necessary if using CxSplitterWnd
          in a regular dll
                  // AFX_MANAGE_STATE(AfxGetStaticModuleState());
                  return CWnd::OnWndMsg(message, wParam, lParam, pResult);
         
}
  这样我们就可以在对话框中使用CxSplitterWnd类了。
精彩图集

赞助商链接