第一种:
int a,b,c;
char ch1[20],ch2[20],ch3[20];
GetDlgItem(IDC_EDIT1)->GetWindowText(ch1,10); //第一种方法
GetDlgItem(IDC_EDIT2)->GetWindowText(ch2,10);
a=atoi(ch1);
b=atoi(ch2);
c=a+b;
itoa(c,ch3,10);
GetDlgItem(IDC_EDIT3)->SetWindowText(ch3);
//第二种方法
GetDlgItemText(IDC_EDIT1,ch1,10);
GetDlgItemText(IDC_EDIT1,ch2,10);
a=atoi(ch1);
b=atoi(ch2);
c=a+b;
itoa(c,ch3,10);
SetDlgItemText(IDC_EDIT3,ch3);
//第三种方法
a=GetDlgItemInt(IDC_EDIT1);
b=GetDlgItemInt(IDC_EDIT2);
c=a+b;
SetDlgItemInt(IDC_EDIT3,c);
//第四种方法(定义一个与控件文本关联的变量(简称关联变量),然后对控件文本尽心操作。这种方法是最简单的)
利用CLASSWARZD中的member variables来为控件增加变量。MFC使这个变量存储控件文本的内容,具体怎样使控件和这个变量怎样关联的可以查看代码(DDX_text(IND,m_n))和变量的初始化代码(在构造函数内)
CDailog::CDailog(CWnd* pParent /*=NULL*/)
: CDialog(CDailog::IDD, pParent)
{
m_bisCreate=false;
//{{AFX_DATA_INIT(CDailog)
m_num3 = 0;
m_num1 = 0;
m_num2 = 0;
//}}AFX_DATA_INIT
}
void CDailog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDailog)
DDX_Text(pDX, IDC_EDIT3, m_num3);
DDV_MinMaxInt(pDX, m_num3, -330, 9999);
DDX_Text(pDX, IDC_EDIT1, m_num1);
DDV_MinMaxInt(pDX, m_num1, 0, 100);
DDX_Text(pDX, IDC_EDIT2, m_num2);
DDV_MinMaxInt(pDX, m_num2, -100, 100);
//}}AFX_DATA_MAP
}
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
void CDailog::OnButton1()
{
UpdateData();
m_num3=m_num1+m_num2;
UpdateData(false);
}
//第五种方法
(定义一个该控件类型的变量(该变量类的对象),简称控件变量,代表着这个控件的本身,利用这个变量来管理这个控件(这是MFC常用的方法:用对应资源的类来定义一个对象,是资源与对象关联起来,然后用这个对象来管理这个资源))
方法:利用CLASSWARZD中的member variables来为控件增加变量(category xuan选择conctrol类型即该控件的类型,变量类型选择该控件的类型)
然后利用该变量中的方法和变量;来实现对这个控件文本的操作和该控件的其他操作。
void CDailog::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDailog)
DDX_Control(pDX, IDC_EDIT2, m_edit2);
DDX_Control(pDX, IDC_EDIT1, m_edit1);
DDX_Control(pDX, IDC_EDIT3, m_edit3);
DDX_Text(pDX, IDC_EDIT3, m_num3);
DDV_MinMaxInt(pDX, m_num3, -330, 9999);
DDX_Text(pDX, IDC_EDIT1, m_num1);
DDV_MinMaxInt(pDX, m_num1, 0, 100);
DDX_Text(pDX, IDC_EDIT2, m_num2);
DDV_MinMaxInt(pDX, m_num2, -100, 100);
//}}AFX_DATA_MAP
}
void CDailog::OnButton1()
{
int a,b,c;
char ch1[20],ch2[20],ch3[20];
m_edit1.GetWindowText(ch1,10);
m_edit2.GetWindowText(ch2,10);
a=atoi(ch1);
b=atoi(ch2);
c=a+b;
itoa(c,ch3,10);
m_edit3.SetWindowText(ch3);
}