Я работаю над проектом MFC win32. У меня есть диалог с двумя элементами управления CMFCEditBrowseCtrl. После того, как пользователь укажет файлы в этих элементах управления, как получить пути к файлам из этих элементов управления?
Обновление:вот мой код
SpecifyInputDialog dlg; // this is my dialog inherited from CDialogEx
dlg.DoModal();
CString strText;
dlg.inFileCtrl.GetWindowTextA(strText.GetBuffer(), 500); // inFileCtrl is CMFCEditBrowseCtrl object
В последней строке появляется ошибка "Ошибка утверждения отладки"...
Обновление 2:
CString strText;
dlg.inFileCtrl.GetWindowText(strText);
Та же ошибка "Ошибка утверждения отладки". Я попытаюсь получить текст, пока диалог не закрыт.
Обновление 3 (решено):
Мне удалось получить текст пути путем реализации обратного вызова
BEGIN_MESSAGE_MAP(SpecifyInputDialog, CDialogEx)
ON_EN_CHANGE(IDC_MFCEDITBROWSE1, &SpecifyInputDialog::OnEnChangeMfceditbrowse1)
END_MESSAGE_MAP()
И в методе обработчика:
void SpecifyInputDialog::OnEnChangeMfceditbrowse1()
{
this->inFileCtrl.GetWindowText(this->inFileString);
}
Итак, ваша мысль о получении текста, пока диалог еще не закрыт, была правильной. Пожалуйста, обновите свой ответ, чтобы я мог пометить его как решение.