DDV DoDataValiad数据验证 DDX DoDataExchange 数据交换

MFC采用了独特的DDX和DDV技术。

DDX将数据成员变量同对话类模板内的控件相连接,这样就使得数据在控件之间很容易地传输。

DDV用于数据的校验,例如它能自动校验数据成员变量数值的范围,并发出相应的警告。

在类向导下添加成员变量的过程很简单,需要说明的是

。在DDV/DDX技术中,允许用户为同一个控件关联多个数据成员变量,但必须保证这些变量名是互不相同的,且这些变量在同一个类型不能有多个变量,即在Value和Control类型中各自只能有一个成员变量。

。如果添加的成员变量是一个数值类型,则在类向导对话框的Member Variables页面正文还要求用户输入变量的范围,这就是控件的数据校验设置。

添加完成成员变量后,类向导会在代码文件里加入如下代码

1. 在头文件中,添加与控件关联的成员变量的声明,代码:

// Dialog Data

//{{AFX_DATA(CMyDlg)

enum { IDD = IDD_DIALOG5 };

int m_edit;

//}}AFX_DATA

2. 在 CPP文件中的类构造函数实现代码处,添加数据成员变量的一些初始化代码

CMyDlg::CMyDlg(CWnd pParent /=NULL/)

: CDialog(CMyDlg::IDD, pParent)

{

//{{AFX_DATA_INIT(CMyDlg)

m_edit = 0;

//}}AFX_DATA_INIT

}

3. 在 CPP文件中的DoDataExchange函数体内,添加控件的DDX/DDV代码,它们都是一些以DDV_或DDX_开关的函数调用。

void CMyDlg::DoDataExchange(CDataExchange pDX)

{

CDialog::DoDataExchange(pDX);//调用此函数作为DDX的开始

//{{AFX_DATA_MAP(CMyDlg)

DDX_Text(pDX, IDC_EDIT1, m_edit);//将控件与变量进行数据交换

DDV_MinMaxInt(pDX, m_edit, 1, 10);//校验最大值和最小值

//}}AFX_DATA_MAP

}

需要说明的是,上述代码中以 “//{{AFX_DATA” 或“//{{AFX_DATA_XXXX”开头,而以 “//}}AFX_DATA” 或 “//}}AFX_DATA_”结尾的标记是类向导定义的专门用来做DDX/DDVr 标记,表示该部分的代码是同类向导自动管理,用户一般不需要去更改。

4. 当为一个控件定义一个关联的数据成员变量后,就可以使用CWnd::UpdataData函数实现控件的控制,包括控件相关数据的输入和读取。

UpdateData(FALSE) 数据由控件相关的成员变量向控件传输

UpdateData(TRUE)或参数为空数据从控件向相关联的成员变量复制。

DVD和DDV有什么区别?

同意!DDC阀,相当于以前的调速器滑阀,作用是将负荷或者转速的电信号通过DDV变为机械位移,从而改变油动机的动作,带着调门开关,改变机组进汽量。

油动机又叫伺服马达,作用是带着调门或者旋转隔板开关,从而改变汽机进汽量或者对外供热量的大小。

OPC,是超速保护的英文意思,其作用是在机组甩负荷时动作,快关调门和旋转隔板,防止机组超速。

正常调节负荷或者转速时,是由DDV阀带着油动机动作,再通过油动机带动调门开关。

而OPC保护动作时,是通过OPC滑阀直接卸去冲油压,从而带动调门直接快速关闭。 赞同0| 评论

数字多功能光盘(英文:Digital Versatile Disc),简称DVD,是一种光盘存储器,通常用来播放标准电视机清晰度的**,高质量的音乐与作大容量存储数据用途。DVD与CD的外观极为相似,它们的直径都是120毫米左右。

ddv 是 MFC提供了类CDataExchage 来实现对话框类与控件交换(DDX),该类还提供了数据有效机制(DDV)。

以上就是关于什么是DDV/DDX技术如何使用这种技术全部的内容,包括:什么是DDV/DDX技术如何使用这种技术、汽轮机上DDV 阀,油动机还有OPC,分别是什么,都有什么作用,三者间有什么关系。回答越详细越好谢谢、DVD和DDV有什么区别等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!