обмен с CEdit
у меня есть вот такой класс
class CAppForm : public CFormView, public CD3DApplication
в нём int iShootingPeriod; (public)
void CAppForm::DoDataExchange(CDataExchange* pDX)
{
CFormView::DoDataExchange(pDX);
DDX_Text(pDX, IDC_EDIT1, iShootingPeriod);
}
DDX_Text(pDX, IDC_EDIT1, iShootingPeriod); - эта штука вроде работает (после иниз-и приложения в едит боксе я вижу значение iShootingPeriod)
хочу реагировать на изменение значения пользователем
void CAppForm::OnChangeEdit1()
{
CEdit *EditBoxPtr = (CEdit *) (this->GetDlgItem(IDC_EDIT1));
// получил указатель (непустой)
char CStr[16]; // хочу сюда считать значение из едитбокса моего
int i = EditBoxPtr->GetLine(0,CStr);
// i == 0 и пустая строка.... вот
}
Вообще-то попробуй заюзать GetDlgItem(ID_CONTROLA)->GetWindowText()
Если тебе надо получить значение CEdita в виде числа, в переменную iShootingPeriod то просто вызови UpdateData( 1 ), а там всё что описано в DDX будет из диалога перенесено в переменные.
сорри, я не увидил предыдущий пост :)