【问题标题】:Retrieving CTreeCtrl items after closing the Dialog关闭对话框后检索 CTreeCtrl 项
【发布时间】:2011-12-01 11:51:07
【问题描述】:

在应用程序中,我只需要处理在树中选择的项目。我在添加到 Dailog 的属性表中使用 MFC CTreeCtrl。树显示文件夹列表,用户选择一些,当用户按下确定时,我需要处理文件夹。我使用 SetItemData 保存文件夹信息。其他一切工作正常。问题是当用户按下 OK 时,CTreeCtrl 变量为空,因此我不能使用 GetItemData。有没有办法让我在关闭对话框后仍然使用该变量? 任何帮助将不胜感激。

【问题讨论】:

    标签: mfc clistctrl


    【解决方案1】:

    您必须将信息转移到另一个变量中,该变量将在窗口被销毁时存在。对于文件夹列表,std::vector<CString> 是一个很好的解决方案。

    在对话框中,当用户按下确定时,遍历你的树并将文件夹路径复制到向量中。

    在对话框之外,代码如下所示:

    CMyDlg dlg(this);
    if(dlg.DoModal() == IDOK)
    {
        // Information is in dlg.m_vecFolders available
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-04
      • 2014-12-04
      • 1970-01-01
      • 2018-11-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多