控件变量和程序成员变量是如何交换数据的?
来源:互联网 发布:学生党怎么开淘宝店 编辑:程序博客网 时间:2024/05/22 03:45
Q:控件变量和程序成员变量是如何交换数据的?
A:在MFC中针对对话框的数据交换和验证提供了DDX(用于交换)和DDV(用于验证)机制来完成这些任务。
如果使用DDX机制,通常在OnInitDialog函数或者对话框构造函数中,设置对话框对象的成员变量值。在对话框将要显示的前一刻,框架的DDX机制立即将成员变量值传输到对话框的控件中,而当用DoModal(创建Mode对话框)或者Create(创建Modeless对话框)创建对话框并显示时,即可看到那些控件值。对话框成员函数OnInitDialog缺省实现是:调用CWnd的成员函数UpdateData(FALSE)以初始化对话框的控件。
当用户单击了“确定”按钮时,或者在任何时候以参数TRUE调用UpdateData时,DDX机制就会把数据从控件传输到成员变量中。此时,DDV机制按照事先指定的验证规则对传输的数据进行验证。
控制的种类很多,每一种的交换方法都不一样,如CEdit是GetWindowText()和SetWindowText(),而CButton等的处理方法就更复杂了,好在MFC帮了你的忙。
GetWindowText()是获取控件当前内容(Caption或者the text within the control —for the control,具体可以查看MSDN)值,是对单个控件而言;
而UpdateData()是作用于整个CWnd的DDX数据交换机制之中的,是控件和数据的双向通道。
来自:http://hi.baidu.com/freshair2010/blog/item/92178f549415851e3b2935f0.html
- 控件变量和程序成员变量是如何交换数据的?
- 控件变量和程序成员变量是如何交换数据的?
- MFC 控件变量数据交换
- C++编译器是如何管理类和对象的,类的成员函数和成员变量
- 看对象是如何调用类成员变量的
- Activity 中mParent 成员变量是如何被赋值的。
- Activity 中mParent 成员变量是如何被赋值的
- 如何在MFC线程中使用控件的成员变量和函数
- 局部变量和成员变量的区别
- 局部变量和成员变量的区别
- 成员变量和静态变量的区别?
- 成员变量和局部变量的区别
- 成员变量和局部变量的区别
- 成员变量和局部变量的区别
- 成员变量和静态变量的区别?
- python的类变量和成员变量
- 成员变量和局部变量的区别
- 成员变量和局部变量的区别
- 多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态值
- 读书笔记及想法
- 邮件营销必读系列五:纯文本和HTML邮件类型
- 【转】回应茅于轼先生之问
- MFC中关于控件变量的使用!
- 控件变量和程序成员变量是如何交换数据的?
- Arch 完善
- Mac安装笔记
- 我的首个创业项目:爱购直通车
- C++中this指针的用法.
- 将vim作为QT开发的IDE
- Qt制作Aero特效窗口
- 多组织,法人实体(legal entity),业务实体(OU)
- Linux 面试