// 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;
}
}
转载于:https://www.cnblogs.com/luyuxibaby/p/5217475.html
相关资源:MFC界面 实现文本查询功能
转载请注明原文地址: https://win8.8miu.com/read-1489118.html