如果熟悉 DDX 功能,可以使用 “添加成员变量向导 ”中的 Control 属性创建类型安全访问。 这种方法比创建没有代码向导的控件更容易。
如果只想访问控件的值,DDX 会提供它。 如果要做的不仅仅是访问控件的值,请使用“添加成员变量向导”将相应类的成员变量添加到对话框类中。 将此成员变量附加到 Control 属性。
成员变量可以具有 Control 属性而不是 Value 属性。 Value 属性是指从控件返回的数据类型,例如 CString 或 int。 Control 属性允许通过类型为 MFC 中的控件类之一的数据成员(例如 CButton 或 CEdit)直接访问控件。
注释
对于给定的控件,可以拥有具有 Value 属性的多个成员变量,最多可以有一个具有 Control 属性的成员变量。 只能有一个映射到控件的 MFC 对象,因为附加到控件的多个对象或任何其他窗口会导致消息映射中存在歧义。
可以使用此对象为控件对象调用任何成员函数。 此类调用会影响对话框中的控件。 例如,对于由类型CButton变量表示的复选框控件,可以调用:
m_Checkbox.SetCheck(BST_CHECKED);
此处的成员变量m_Checkbox与 GetMyCheckbox)中显示的成员函数相同。 如果复选框不是自动复选框,则单击按钮时,仍需要对话框类中BN_CLICKED控件通知消息的处理程序。
有关控件的详细信息,请参阅 控件。