// TestDlg.cpp : implementation file // #include "stdafx.h" #include "Dlg.h" #include "TestDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CTestDlg dialog CTestDlg::CTestDlg(CWnd* pParent /*=NULL*/) : CDialog(CTestDlg::IDD, pParent) { //{{AFX_DATA_INIT(CTestDlg) //}}AFX_DATA_INIT m_IsCreate = false; m_smaller = false; } void CTestDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CTestDlg) DDX_Control(pDX, IDC_EDIT3, m_edit3); DDX_Control(pDX, IDC_EDIT2, m_edit2); DDX_Control(pDX, IDC_EDIT1, m_edit1); //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(CTestDlg, CDialog) //{{AFX_MSG_MAP(CTestDlg) ON_BN_CLICKED(IDC_BTN_ADD, OnBtnAdd) ON_BN_CLICKED(IDC_STATIC1, OnStatic1) ON_BN_CLICKED(IDC_BUTTON1, OnButton1) //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CTestDlg message handlers void CTestDlg::OnBtnAdd() { // 如果创建窗口以后再次点击窗口会报错,必须判断窗口是否已经创建 // 所以需要在类中增加一个布尔型的成员变量用于判断 // static CButton btn; // if (m_IsCreate == false) // { // // btn.Create("新按钮",BS_DEFPUSHBUTTON,CRect(0,0,200,200),this,123); // btn.ShowWindow(SW_SHOW); // m_IsCreate = true; // } // else // { // btn.DestroyWindow(); // m_IsCreate=false; // } /*通过判断窗口窗口指针是否存在,也可以判断该按钮是否创建*/ // static CButton btn; // // if (GetDlgItem(123)==NULL) // // { // btn.Create("新按钮",BS_DEFPUSHBUTTON,CRect(0,0,200,200),this,123); // btn.ShowWindow(SW_SHOW); // } /*通过判断窗口窗口句柄是否存在,也可以判断该按钮是否创建*/ // static CButton <a href="http://gocrazygreen.net/">HCG Diet</a> btn; // // if(!btn.m_hWnd) // // { // btn.Create("新按钮",BS_DEFPUSHBUTTON,CRect(0,0,200,200),this,123); // btn.ShowWindow(SW_SHOW); // } /************************************************************************/ /* 第一种方法: 1.分别定义三个整形变量、字符型数组 2.获取EDIT1、EDIT2中的数据,保存到ch1、ch2分别保存到buff中。 3.使用C语言中的函数atoi()进行转换成为整形数据进行运算,结果存放在num3。 4.使用C语言中的函数itoa()将数据存放到ch3的buff中。 5.使用SetWindowText()输出buff中的数据 /************************************************************************/ // int nmu1,num2,num3; // char ch1[10],ch2[10],ch3[10]; // GetDlgItem(IDC_EDIT1)->GetWindowText(ch1,10); // GetDlgItem(IDC_EDIT2)->GetWindowText(ch2,10); // nmu1 = atoi(ch1); // num2 = atoi(ch2); // num3 = nmu1 + num2; // itoa(num3,ch3,10); // GetDlgItem(IDC_EDIT3)->SetWindowText(ch3); /************************************************************************/ /* 第二种方法:GetDlgItemText () 函数。 GetDlgItem()和GetWindowText()的组合 /************************************************************************/ // int num1,num2,num3; // char ch1[10],ch2[10],ch3[10]; // GetDlgItemText(IDC_EDIT1,ch1,10); // GetDlgItemText(IDC_EDIT2,ch2,10); // num1 = atoi(ch1); // num2 = atoi(ch2); // num3 = num1+num2; // itoa(num3,ch3,10); // SetDlgItemText(IDC_EDIT3,ch3); /************************************************************************/ /* 第三种方法:GetDlgItemInt()直接得到数值 /************************************************************************/ int num1,num2,num3; num1 = GetDlgItemInt(IDC_EDIT1); num2 = GetDlgItemInt(IDC_EDIT2); num3 = num1 + num2; SetDlgItemInt(IDC_EDIT3,num3); /************************************************************************/ /* 第四种方法 为成员变量关联值类型。 /************************************************************************/ // UpdateData(); // m_edit3 = m_edit1 + m_edit2 ; // UpdateData(false); /************************************************************************/ /* 第五种方法:为成员变量关联控制类型 /************************************************************************/ /* char ch1[10],ch2[10],ch3[10]; int num1,num2,num3; m_edit1.GetWindowText(ch1,10); m_edit2.GetWindowText(ch2,10); num1 = atoi(ch1); num2 = atoi(ch2); num3 = num1 + num2; itoa(num3,ch3,10); m_edit3.SetWindowText(ch3);*/ } void CTestDlg::OnStatic1() { GetDlgItem(IDC_STATIC1)->SetWindowText("测试"); } void CTestDlg::OnButton1() { if (false == m_smaller) { GetDlgItem(IDC_BUTTON1)->SetWindowText("扩展>>"); m_smaller = true; } else { GetDlgItem(IDC_BUTTON1)->SetWindowText("<<收缩"); m_smaller = false; } }
原文:http://www.cnblogs.com/luyuxibaby/p/5217475.html