C ++ - 在DDX_Text函数中,nIDC应该是唯一的吗?

时间:2016-12-15 07:40:48

标签: c++ windows mfc ddx

我们假设我们有一些Dialog并且在DoDataExchange函数中我们有一些DDX_Text次调用,这些调用适用于某些文本字段。 让我们看看原型:

void AFXAPI DDX_Text( CDataExchange* pDX, int nIDC, CString& value );

我是Windows Dialogs和这个动态数据交换机制的新手,我还没有找到足够快的答案。 有些东西告诉我nIDC应该是唯一的价值,但事实上在实际项目中,我发现这并非总是如此。

所以问题是:我们什么时候可以nIDC一个唯一的,什么时候不?我们应该或不应该?

1 个答案:

答案 0 :(得分:0)

显然nIDC必须是独一无二的。如果您有两个或更多具有相同值的资源,您永远不会想要处于这种情况。

我自己经常在DoDataExchange之外使用DDX_Text来读/写控制值。从控件读取值的示例:

UINT num;
CDataExchange dx( this, TRUE );
DDX_Text( &dx, IDC_EDIT1, num );