对话框控件的变量绑定
2013-08-15 01:06
281 查看
DDX : Dialog Data Exchange 对话框数据交换
DDV : Dialog Data Validate 对话框数据校验
①、控件类型变量绑定的两种方法 - 数据交换机制:
◆ 利用 GetDlgItem 函数;
1、在头文件中声明变量类型 :CButton *m_Button;
2、在OnInitDialog中使用GetDlgItem函数
m_Button = (CButton *)GetDlgItem(IDC_BUTTON);
3、使用变量 m_Button->EnableWindow(FALSE);
◆ 利用 VC向导绑定;
1、在向导中添加变量名。
2、编译器会在头文件和 .cpp文件中添加如下代码:
头文件中添加 : CButton b_But_Lesson;
DoDataExchange函数中添加 : DDX_Control(pDX, IDC_BUTTON, b_But_Lesson);
3、使用变量 b_But_Lesson.EnableWindow(FALSE);
②、VC向导字符串类型、数值类型 变量的绑定
1、在向导中添加变量,选择对应的数据类型。
2、VC会生成如下代码:
头文件:CString m_Str_Edit;
CPP文件:
构造方法添加:, m_Str_Edit(_T(""))
DoDataExchange函数中添加: DDX_Text(pDX, IDC_EDIT1, m_Str_Edit);
----------------------------------------------------------------------------------
UpdateData(TRUE); //控件流向变量;
UpdateData(FALSE); //变量流向控件;
③、数据验证机制;
DoDataExchange函数中添加: DDV_MaxChars(pDX, m_Str_Edit, 5);
DDV 数据校验要与绑定变量组合使用,同时存在,可以使用VC向导添加代码,也可以手动添加代码。
④、MFC与SDK API中同名函数问题。
//SetDlgItemText(IDC_EDIT1,_T("123"));
//::SetDlgItemText(this->m_hWnd,IDC_EDIT1,_T("123"));
CWnd *m_cWnd = AfxGetMainWnd();
::SetDlgItemText(m_cWnd->m_hWnd,IDC_EDIT1,_T("123"));
DDV : Dialog Data Validate 对话框数据校验
①、控件类型变量绑定的两种方法 - 数据交换机制:
◆ 利用 GetDlgItem 函数;
1、在头文件中声明变量类型 :CButton *m_Button;
2、在OnInitDialog中使用GetDlgItem函数
m_Button = (CButton *)GetDlgItem(IDC_BUTTON);
3、使用变量 m_Button->EnableWindow(FALSE);
◆ 利用 VC向导绑定;
1、在向导中添加变量名。
2、编译器会在头文件和 .cpp文件中添加如下代码:
头文件中添加 : CButton b_But_Lesson;
DoDataExchange函数中添加 : DDX_Control(pDX, IDC_BUTTON, b_But_Lesson);
3、使用变量 b_But_Lesson.EnableWindow(FALSE);
②、VC向导字符串类型、数值类型 变量的绑定
1、在向导中添加变量,选择对应的数据类型。
2、VC会生成如下代码:
头文件:CString m_Str_Edit;
CPP文件:
构造方法添加:, m_Str_Edit(_T(""))
DoDataExchange函数中添加: DDX_Text(pDX, IDC_EDIT1, m_Str_Edit);
----------------------------------------------------------------------------------
UpdateData(TRUE); //控件流向变量;
UpdateData(FALSE); //变量流向控件;
③、数据验证机制;
DoDataExchange函数中添加: DDV_MaxChars(pDX, m_Str_Edit, 5);
DDV 数据校验要与绑定变量组合使用,同时存在,可以使用VC向导添加代码,也可以手动添加代码。
④、MFC与SDK API中同名函数问题。
//SetDlgItemText(IDC_EDIT1,_T("123"));
//::SetDlgItemText(this->m_hWnd,IDC_EDIT1,_T("123"));
CWnd *m_cWnd = AfxGetMainWnd();
::SetDlgItemText(m_cWnd->m_hWnd,IDC_EDIT1,_T("123"));
相关文章推荐
- 关于对话框控件与变量绑定,
- [7]对话框控件的变量绑定
- 第八节 对话框控件的变量绑定和开源控件的使用
- 7.8对话框控件的变量绑定及开源控件类的使用
- 对话框控件不同类型成员变量的绑定。
- 变量绑定对话框控件不同类型成员变量的绑定
- VC 6.0中添加控件变量后对话框无法…
- 【mfc】不同对话框之间互相操控、全局变量与日期控件
- Xcode4.3.2 中xib 控件与变量绑定的原理
- 解除Xib文件中控件与变量的绑定
- MFC中CEdit控件内容与int变量的绑定
- C++ MFC / VS2013 之六 (对话框:创建对话框类和添加控件变量)
- vs 2005 给对话框上的控件添加变量报错
- Andriod相似命名的多个变量与相似命名控件实现批量绑定
- VS2010/MFC编程入门之七(对话框:创建对话框类和添加控件变量)
- MFC编辑框控件绑定变量出现神奇bug
- 使用QGraphicView控件的对话框不能作为static变量或全局变量?
- WPF 将控件绑定到变量
- C# WPF TextBox控件与变量的绑定
- 弹出的模态对话框上EDIT控件变量的值无法更新的解决方法