最近想学习如何在基于多文档的编程。找不到比较系统的介绍,于是想说直接从代码下手。现在恳请大虾们看有没有类似VC编辑代码的多文档程序。也就是左边是个树形视图
可以显示一个目录下的所文件,然后我们可以打开其中的几个文件(多文档),并且操作(最好是有比较详细的注释)!

解决方案 »

  1.   

    这样的例子很容易,不知道你到底要什么,给我发消息告诉我email,我可以给你发sample code
      

  2.   

    非常感谢!
    应该是很简单的阿,可是对我来说可就难了!就是类似vc的编辑器阿。
    比如我们选择一个目录,然后左边的视图就显示该目录下的所有txt文件
    然后我们点击某一个文件,右边的视图就显示该文件的内容
    我的油箱是[email protected]
      

  3.   

    《深入浅出MFC》和《Windows 程序设计》里不是有说明么?
      

  4.   

    深入浅出MFC我看了一下,好像不是很深入
    我想还是看一个具体的例子,效果更好
      

  5.   

    一个简单例子
    http://my.6to23.com/cigarette/mm2.zip
      

  6.   

    www.vccode.com或www.vckbase.com上找找,很多的.
      

  7.   

    to  bcpl(Let's Rock) 
    为什么我打不开你的例子呢〉好像压缩有点问题!
      

  8.   

    www.vckbase.com上的例子不错,也很多
      

  9.   

    to jackwuwei(吴羡鱼)
    你说得很对,那网站上是很多关于多文档的代码!
    但是都是代码,没有相应的文档说明,对于初学者,看了也是一头雾水!
    那位大虾有看过比较好的书,介绍多文档结构的呢?
    请指点一些
      

  10.   

    to  bcpl(Let's Rock)
    非常感谢你的代码!我看看,有什么不懂得地方再问你!
      

  11.   

    to  bcpl(Let's Rock)
    代码的确十分简单,易懂。但是我还是不明白的地方就是,多文档程序中,我没开一个窗口,或者是
    新建一个窗口的时候。这个窗口是不是会有一个默认的视图对象何文档对象以它一一对应呢?
    因为我想更好的控制每一个窗口!
      

  12.   

    察了一下MSDN后发现,GetFirstViewPosition 和GetNextView这两个函数可以获得,所有的打开的文档的视图指针。但是我的问题是如何才能够定位到,我所指定的文档或者是当前激活的文档!
    谢谢指点
      

  13.   

    用((CMainFrame*)AfxGetMainWnd())->GetActiveDocument()获取当前文档的指针
      

  14.   

    TO bcpl(Let's Rock) 
    你好!根据你的例子,我重新写了一个类似的程序。
    但是左边是一个树形视图,但是我发现,我一使用m_wndSplitter来分割窗口的话
    那么就会变成不是多文档的程序,因为我没有办法看到有多个文档弹出来!
    为什么会这样呢?我现在在考虑使用controlbar来当容器不知道行不行。
    还有一个问题就是,使用CFileDialog的时候,发现只能是点击文件的时候才能够点OK
    但是我想当我点到一个文件夹的时候就会返回,你知道如何实现吗?
    我一定会加分给你的(超过100的)!谢谢
      

  15.   

    void CTabFileDoc::UpdateTabView()
    {
        if(!m_viewList.IsEmpty()) 
        {
         ((CTabFileView*)m_viewList.GetHead())->UpdateView();
         }
    }
    m_viewList这个变量是从哪来的,为什么在MSDN找不到?
    class CTabFileDoc : public CDocument
      

  16.   

    贴子已经结了:)
    现在我有个很奇怪的问题,以前在SDI程序不会出现的!
    就是我在CXXXDOC中定义了打开文件的操作,并且返回我所选的文件夹。
    然后我在其对应的视图类中使用GetDocument()->m_strFolderPath
    来获取这个路径,却发现这个m_strFolderPath的值为空,我想这应该是
    多文档程序所造成问题,但是我又不知道为什么!