1.DDX_Control
void AFXAPI DDX_Control( CDataExchange* pDX, int nIDC, CWnd& rControl );
参数: pDX是 指向CDataExchange对象的指针。这种结构为指定对象提供了建立数据交换的环境,也包括结构的指向。 nIDC 子控件类的资源ID继承控件的属性。rControl 对对话框成员变量的一个引用,形成视图资源,或者控制数据被交换的视图对象。
说明:DDX_Control函数管理着在对话框、表格视或控件视中被子类化的控件与对话框、表格视或控件视的CWnd数据成员之间的数据交换。有关DDX的更多信息参见《Visual C++程序员指南》中的“对话框数据交换和校验”和《Visual C++教程》中的“加入对话框”。
2.DDX_Control(pDX, IDC_EMSG, m_strMessage);
我直接在控件上右键添加的成员变量 m_strMessage是CString类型。可是编译是报错 error C2664: 'DDX_Control' : cannot convert parameter 3 from 'CString' to 'CWnd &'
哪里有问题呢??
答:你关联的是一个控件类型,但你代码里却是一个变量类型。所以报错了。 如果你就是想关联一个CString的变量类型,将DDX_Control改成DDX_Text
3.CHyperLink m_homepage;
然后关键是打算再那个类里面产生超级链接,比如在About对话中
void CTbvcDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CTbvcDlg)
DDX_Control(pDX, IDC_TESTSTATIC/*绑定控件ID*/, m_homepage/*对象*/);//核心代码
//}}AFX_DATA_MAP
}
4.最关键的,最通用的是要做好CHyperLink这个类了
5.当然要记得加上头文件了,#include "hyperlink.h"