帮个忙吧

解决方案 »

  1.   

    思路:自己从CSplitterWnd派生一个类,且在程序中替换向导生成的代码中的相应部分。参考如下的代码:
    class CMySplitterWnd : public CSplitterWnd
    {
      virtual void OnDrawSplitter( CDC* pDC, ESplitType nType, const CRect& rect )
      {
        //添加您自己的代码。
      };
    };class CMainFrame : public CFrameWnd
    {
    protected:
      CMainFrame();
      DECLARE_DYNCREATE(CMainFrame)
    protected:
      CMySplitterWnd m_wndSplitter; //注意要把这里原来的变量声明改成现在的样子。
      

  2.   

    从CSplitterWnd派生一个子类,在.h文件中添加:
    protected:
        virtual void OnDrawSplitter( CDC* pDC, ESplitType nType, const CRect& rect );在.cpp文件中添加:
    void CSplitWnd::OnDrawSplitter( CDC* pDC, ESplitType nType, const CRect& rect )
    {
    CSplitterWnd::OnDrawSplitter(pDC, nType, rect);
    }
      

  3.   

    楼上的朋友说的很对!
    我也正在重载该函数,想把切分条右边的黑条改成同左边颜色一样
    ?在父类的OnDrawSplitter中用到ASSERT(afxData.bWin4);
    可否在派生类中引用"afxData"??