0
votes

When using MFC, if i have a main dialog box, then I another dialog box is called from the main, what message is sent to the main dialogue box to let it know it has focus, is it WM_SETFOCUS()? If so, what paramaters are needed? The problem I have is, a value is selected in the child dialog and I want it copied to an edit control in the main dialog box once it (the child dialog) closes. Right now, I have it so the second dialog box copies its value to a global variable, but once the second dialog box closes, I wanted to the main dialog box to grab the global variable and display in the edit control.

2
Is your secondary dialog a modal dialog or a modeless dialog?IInspectable

2 Answers

3
votes

You can also use a member variable in the child dialog box, like

CChildDialogBox dlg;
if (dlg.DoModal() == IDOK) // child dialog saves the value in a CString member variable m_str
{   GetDlgItem(IDC_EDIT1)->SetWindowText(dlg.m_str);
}

This MSDN article describes how you can set up member variables connected to controls in a dialog box.

0
votes

I realized my problem, really a beginner's mistake, I though after a DoModal call a function would immediately exit. I didn't know I could perform additional code(assigning the edit control variable a new value and then SetWindowText) after the call, before the function ended.