我打算从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*
转换,但这并不总是安全的。首选方法是声明一个类成员:
CMFCEditBrowseCtrl mfc_editbrowse;
并在DoDataExchange
中添加子类。
void CMyDialog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control(pDX, IDC_MFCEDITBROWSE1, mfc_editbrowse);
}
然后,您可以使用m_editbrowse
访问CMFCEditBrowseCtrl
方法。