MFC DDX_Control 与 DDX_Text

DDX_TEXT()的作用可以理解为把字符串变量和控件的文本(WindowText)关联起来, 
DDX_Control()
的作用可以理解为把变量和控件本身关联起来, 
DoDataExchange(pDX)
就是处理所有变量与其关联控件交换数据的函数。

void CView::DoDataExchange(CDataExchange* pDX)

CFormView::DoDataExchange(pDX);
DDX_Text(pDX, IDC_ID_VALUE, m_strID);
DDX_Control(pDX, IDC_ID_VALUE, m_editID);

在程序中
通过update(TRUE)取得控件上的值到m_strID,处理修改后通过update(FALSE)传回控件,界面显示
通过m_editID.GetWindText(str),取得值,处理后,通过m_editID.SetWindText(str)传回控件界面显示

DDX_TEXT()数据交换过程:

UpdateData(TRUE);//将控件的内容传回 m_strName;

m_strName = _T("关联变量");//修改值

UpdateData(FALSE);//将m_strName的值显示到控件

DDX_Control()数据交换过程:

CString str;

m_EDT_strName.GetWindowText(str);//得到控件的内容保存到str

str = _T("控件绑定变量");

m_EDT_strName.SetWindowText(str);//设置控件的内容为str

参考:https://blog.csdn.net/sunnzhongg/article/details/56282825

原文地址:https://www.cnblogs.com/youxin/p/10697713.html

时间: 2024-08-30 14:30:11

MFC DDX_Control 与 DDX_Text的相关文章

MFC常见一些知识点

1.DDX_Control 与 DDX_Text 区别 DDX_TEXT()的作用可以理解为把字符串变量和控件的文本(WindowText)关联起来, DDX_Control()的作用可以理解为把变量和控件本身关联起来, DoDataExchange(pDX)就是处理所有变量与其关联控件交换数据的函数. void CView::DoDataExchange(CDataExchange* pDX){CFormView::DoDataExchange(pDX);DDX_Text(pDX, IDC_I

MFC中给控件添加变量,DoDataExchange中

DoDataExchange函数其实是一项数据动态绑定技术.比如你在写动态按钮过程中须对按钮添加变量时,怎么添加?控件类已经写好了,其变量是已经固定的.你要添加新的变量就要用到DoDataExchange函数. 你要在对话框的构造函数里面初始化一个变量,再用DoDataExchange函数将它绑定到你的动态按扭中,比如:DDX_Check(pDX, IDC_CHECK1, m_Lesson1);这就是将m_Lesson1(这是一个外部变量,其定义在对话框的构造函数里)绑定到IDC_CHECK1中

【转】MFC对话框和控件

原文网址:http://www.cnblogs.com/tiwlin/archive/2013/05/08/3067966.html 对话框和控件 对话框是Windows应用程序中一种常用的资源,其主要功能是输出信息和接收用户的输入数据.控件是嵌入在对话框中或其它父窗口中的一个特殊的小窗口,它用于完成不同的输入.输出功能.对话框与控件关系密切,在每个对话框上一般都有一些控件,对话框依靠这些控件与用户进行信息的交互. 在MFC中,对话框的功能被封装在CDialog类中,而CDialog类是CWnd

C++ double转string类型以及MFC控件简单用法

这两天项目需要,测试c++库里面内容.生成jar再给Android调用.我没有学过C++,现在开始记录C++简单用法.测试时候一般都是使用mfc程序来测试,要输入值,显示结果吗.我用的编译环境vs2008. 一.double 转string #include <string> CString strResultx; strResultx.Format(_T("x:%.4f\n"), 89.7887878); 转换结果还是放在strResultx 2.两个字符串相连 CStr

MFC CSocket AfxBeginThread PossMessage Menu 自定义消息

1 // StockServerDlg.h : 头文件 2 // 3 4 #pragma once 5 #include "afxwin.h" 6 7 UINT ThreadProc(LPVOID pParm); 8 9 struct threadInfo 10 { 11 char recvMsg[256]; 12 char sendMsg[256]; 13 HWND hWnd; //主窗口句柄,用于消息的发送 14 }; 15 16 // CStockServerDlg 对话框 17

MFC DAY10 11 12

一 MFC对话框 1 DoModal函数的执行过程 1.1 查找和加载对话框资源 1.2 将父窗口设置为不可用状态 1.3 创建和显示对话框 1.4 进入对话框的消息循环 1.5 点击OK或者Cancel或者关闭按钮,隐藏对话框窗口 1.6 将父窗口设置为可用的和活动的 1.7 销毁对话框窗口 1.8 释放对话框资源 1.9 返回执行结果(IDOK/IDCANCEL) 二 对话框数据交换技术(DDX) 引入对话框数据交换技术的目的方便的操作控件.将对话框类的 成员变量与对话框的控件绑定,通过操作

MFC 注册表编程

记录点滴. 对话框部分程序: 1 // RegeditDlg.h : 头文件 2 // 3 4 #pragma once 5 #include "afxwin.h" 6 7 // 注册表监控线程函数 8 static DWORD WINAPI ThreadFunc(); 9 10 // CRegeditDlg 对话框 11 class CRegeditDlg : public CDialogEx 12 { 13 // 构造 14 public: 15 CRegeditDlg(CWnd*

MFC Socket双向通信

记录点滴. 服务端部分程序: 1 //MySocket.h 2 3 // CMySocket 命令目标 4 5 #pragma once 6 7 #define SOCKET_EVENT WM_USER + 11 8 #define WM_MYMESSAGE WM_USER + 12 9 10 // 同意连接 发送 接收 关闭 11 enum { ACCEPT = 0, SEND = 1, RETR = 2, CLOSE = 3 }; 12 13 14 class CMySocket : pub

MFC总结

一MFC 的概念和作用 1 什么是MFC? 全称Microsoft Foundation Class Library 我们称之为 微软基础类库,封装了绝大部分WIN32 api 函数,还封装 了程序流程. 1.1 硬盘存在形式就是一个库(静态库/动态库) 1.2 原理上还是一个程序框架 2 为什么使用MFC? 基于框架编程,提供工作效率,减少开发周期,节约开发 成本. 二几个重要头文件 afx.h - MFC 绝大部分类的声明 afxwin.h - 包含了afx.h 和windows.h afx