请教,菜鸟建了一个基于单文档的工程(资源管理器风格)菜鸟想利用左边的树来控制右边的列表(即每选中一个不同的树节点,右边就显示不同的数据表)。菜鸟已经把树和列表建好了,但不知道这关联程序应该在哪里写,怎么写。大家帮帮忙呀,菜鸟感激不尽。

解决方案 »

  1.   

    处理tree的selchanged消息
    例:
    void CAutoEditDlg::OnSelchangedTreeMethod(NMHDR* pNMHDR, LRESULT* pResult) 
    {
    NM_TREEVIEW* pNMTreeView = (NM_TREEVIEW*)pNMHDR;
    // TODO: Add your control notification handler code here HTREEITEM hSele=m_treeMethod.GetSelectedItem();
    HTREEITEM hParent=m_treeMethod.GetParentItem(hSele);
    CString str=m_treeMethod.GetItemText(hSele);
      
             if( str==a )
             {}
             else
             ......
      

  2.   

    在你的树和列表都在的那个程序里,如对话框.
    假如你已经建立了list实例,你就在上面的函数里处理list的显示。
       if( str==a )
       {
           listYou.ResetContent();
           listYou.AddString(str2);
           ......
        }
        else if( str==b )
             ......
      

  3.   

    flyelf(空谷清音) 帮帮忙,我是菜鸟,我不知道在树视图里如何获得列表视图的指针
      

  4.   

    lsm0001()兄弟,对话框我很明白怎么写,我做过很多次了,现在是视图,第一次尝试中。
      

  5.   

    树视图和列表视图不是有一个共同的父窗口如分割窗口,或者是mainfrm(sdi)等,你在列表视图的init函数将指针保存在这个窗口作为公用数据,在树视图的相关函数调用这个指针就行了。