如题,给个最简单的例子就好 我好几个帖子一样的帖子

解决方案 »

  1.   

    这是我ctrl下初始化CFrameWnd的代码
    int CSanCeDanCtrl::OnCreate(LPCREATESTRUCT lpCreateStruct)
    {
    if (COleControl::OnCreate(lpCreateStruct) == -1)
    return -1;// TODO:  Add your specialized creation code here
    m_ptrMainFrame = new CMainFrame;
    m_ptrMainFrame->Create(NULL,NULL,WS_CHILD,CRect(0,0,1280,768), this);m_ptrMainFrame->ShowWindow(TRUE);
    m_ptrMainFrame->UpdateWindow();return 0;
    }以下是我CFrameWnd创建的代码
    BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) 
    {
    // TODO: Add your specialized code here and/or call the base classm_ptrDoc = new CCellDoc();
    m_ptrView = new CCellView();
    m_ptrView->Create(NULL, NULL, WS_CHILD|WS_VISIBLE,CRect(0,0,0,0), this, AFX_IDW_PANE_FIRST, NULL);
    m_ptrDoc->AddView(m_ptrView);
    m_ptrView->SetDocument(m_ptrDoc);
    CWnd* _tmp = this;
    m_ptrView->SetMainFramePtr(_tmp);
    m_ptrView->ShowWindow(TRUE);
    m_ptrView->UpdateWindow();int retValue = TRUE;
    retValue = Fx_CreateToolBar();m_wndToolBar.ShowWindow(SW_SHOW);
    m_wndStatusBar.ShowWindow(SW_SHOW);
    m_wndToolBarTextTool.ShowWindow(SW_SHOW);SetActiveView(m_ptrView);return TRUE;
    }能不能告诉我一下哪里有问题是不是在创建过程中就有了问题。谢谢大侠了~ 
      

  2.   

    问题又有了新的进展,发现CFrameWnd的菜单有点击事件 但是没有鼠标移动状态改变事件,区别是因为将view显示了出来 所以CFrameWnd的事件有些就不能处理,没用单文档类我该怎样做CFrameWnd和CView的事件?
      

  3.   

    没做过SDI,不太清楚里面的消息驱动流程,有个建议就是你新建一个SDI工程,看看里面的区别,OCX和普通的MFC程序就是新建最外层窗口的地方有点不一样,其他的都被MFC隐藏起来了,你就当作普通程序看待就行了,除了一些特殊的按键处理会被浏览器拦截,什么鼠标,普通键盘输入都是没问题的.
      

  4.   

    事件一般都不用自己处理,你描述的只要不显示View就没问题 你可以根据view绘制一级一级注释看能不能有所突破