从 Dialog 对象检索数据

框架提供了一种简单的方法来初始化对话框中的控件值,以及从控件中检索值。 更费力的手动方法是调用类SetDlgItemText的函数GetDlgItemTextCWnd成员函数,这些函数适用于控制窗口。 使用这些函数,可以单独访问每个控件来设置或获取其值,调用函数,例如 SetWindowTextGetWindowText。 框架的方法自动执行初始化和检索。

使用对话框数据交换(DDX),可以更轻松地在对话框中的控件和对话对象中的成员变量之间交换数据。 这种交换是双向的。 若要初始化对话框中的控件,可以在对话框对象中设置数据成员的值,框架将在显示对话框之前将值传输到控件。 然后,可以随时使用用户输入的数据更新对话框数据成员。 此时,可以通过引用数据成员变量来使用数据。

还可以安排使用对话数据验证(DDV)自动验证对话控件的值。

对话 数据交换和验证中更详细地介绍了 DDX 和 DDV。

对于模式对话框,可以检索用户在 DoModal 返回 IDOK 但对话框对象被销毁之前输入的任何数据。 对于无模式对话框,可以随时从对话框对象中检索数据,方法是使用参数 TRUEUpdateData 调用 ,然后访问对话框类成员变量。 对话 数据交换和验证中更详细地讨论了此主题。

另请参阅

在 MFC 中使用对话框