三金兄的自留地儿

导航

使用CTabctrl::InsertItem 报Debug Assertion Failed

查找原因,原来是控件的资源ID和这个Tab控件没有关联起来。

用DDX_Control函数解决问题

void AFXAPI DDX_Control(
CDataExchange
* pDX,
int nIDC,
CWnd
& rControl
);

参数: pDX 指向CDataExchange对象的指针。框架提供了这个对象以建立数据交换的环境, 包括其方向。

      nIDC 与控件属性相关的被子类化的控件的资源ID。

      rControl 对对话框、表格视或控件视的成员变量的引用,将与该变量发生数据交换。

说明:

          DDX_Control函数管理着在对话框、表格视或控件视中被子类化的控件与对话框、表格视或控件视的CWnd数据成员之间的数据交换。

总结:其实就是用于将nIDC与rControl相关联。在一个资源中,比如文本框,组合框等等。可以添加控件变量和数据变量,DDX_TEXT为关联数据控件,DDX_Control为关联控件变量。

posted on 2011-02-17 16:53  三金兄的自留地儿  阅读(906)  评论(1编辑  收藏  举报