MFC 控件变量

来源:互联网 发布:siesta软件优点 编辑:程序博客网 时间:2024/05/22 07:54
一直以来都不喜欢去用控件变量去操作控件的相关操作,而选择通过控件ID的模式来操作GetDlgItem(IDC_XXXX)->Fuctions。其实选择这个模式不外乎是在躲避对控件变量操作的不熟悉。今天特意去阅读了相关资料。
控件关联变量时,1,可以有控件类别(Control);2,也可以有值类别(Value);
对于控件类别的变量,
1,在类定义中会增加一个变量 CButton m_cMyButton; m_cMyButton 就是CButton类的一个对象,因此对这个按钮的操作,都能通过m_cMyButton.xxxxx, 来操作


2,在控件关联一个值类别,这个变量将会用来接受,传递相关变量的值。通过UpdateDate来实调用DoDataExchange(CDataExchange* pDX)实现变量信息交换
用UpdateDate(TRUE)来把IDC_EDIT1控件数据写到m_MyData; 
用UpdateDate(FALSE)把m_MyData数据读写到IDC_EDIT1控件; 


在类定义中增加的代码
 CButton m_cMyButton;
 CEdit m_cMyEdit;
 double m_MyData;

DoDataExchange代码的变化
void CTestTheContrlDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialogEx::DoDataExchange(pDX);
 DDX_Control(pDX, IDC_BUTTON_MYBUTTON, m_cMyButton);
 DDX_Control(pDX, IDC_EDIT1, m_cMyEdit);
 DDX_Text(pDX, IDC_EDIT1, m_MyData);
}
0 0
原创粉丝点击