Visual c++ MFC如何从MFCEditBrowseControl获取路径并将其复制到编辑控件?

Visual c++ MFC如何从MFCEditBrowseControl获取路径并将其复制到编辑控件?,visual-c++,path,mfc,Visual C++,Path,Mfc,我打算从CMFCEditBrowseControl获取路径,并将其复制到CEdit编辑框。我已经做了下面的对话,标题是“不是路径”,请让我知道如何使用MFC和C++来获取路径,将特定文件保存到目的地? CString strTextone; (CMFCEditBrowseCtrl *) GetDlgItem(IDC_MFCEDITBROWSE1)-&inFileCtrl; GetWindowText(strTextone); (CEdit *) GetDlgItem(IDC_EDIT2)

我打算从CMFCEditBrowseControl获取路径,并将其复制到CEdit编辑框。我已经做了下面的对话,标题是“不是路径”,请让我知道如何使用MFC和C++来获取路径,将特定文件保存到目的地?
CString strTextone;
(CMFCEditBrowseCtrl *) GetDlgItem(IDC_MFCEDITBROWSE1)-&inFileCtrl;
GetWindowText(strTextone);
(CEdit *) GetDlgItem(IDC_EDIT2)-&e_Edit;
SetWindowText(strTextone);

这是我的密码。我是这方面的初学者,所以请纠正我的错误

您可以获得指向
CWnd
的指针:

CString strTextone;
CWnd* ptr = GetDlgItem(IDC_MFCEDITBROWSE1);
ptr->GetWindowText(strTextone);
ptr->SetWindowText(_T("something else"));
这将起作用,因为
SetWindowText/GetWindowText
CWnd
方法。您可以使用
CMFCEditBrowseCtrl*
cast,但这并不总是安全的。首选方法是声明类成员:

CMFCEditBrowseCtrl mfc_editbrowse;
并在
DoDataExchange
中添加子类

void CMyDialog::DoDataExchange(CDataExchange* pDX)
{
    CDialog::DoDataExchange(pDX);
    DDX_Control(pDX, IDC_MFCEDITBROWSE1, mfc_editbrowse);
}

然后您可以使用
m_editbrowse
访问
CMFCEditBrowseCtrl
方法。

不要一次问两个问题。这样做会限制任何潜在答案对那些需要精确组合的用户的有用性。我不知道你想解决的真正问题是什么。我也不知道,为什么你发布了假的代码,甚至没有编译的代码