6. C버튼 처리를 넣어준다.
7.
4개의 사칙연산에 따른 코드 작성.
void CCALCDlg::OnBnClickedClear()
{
mS = "";//초기화
m_sub = 0;
UpdateData(false);//변경된 변수값을 화면에 적용.
}
//화면내용 나타내주는 변수를 초기화 하고 변경된 값을 화면 출력으로 보냄.
//저장된 다른 앞의 항도 초기화해줌.
//화면내용 나타내주는 변수를 초기화 하고 변경된 값을 화면 출력으로 보냄.
//저장된 다른 앞의 항도 초기화해줌.
7.
4개의 사칙연산에 따른 코드 작성.
void CCALCDlg::OnBnClickedPlus()
{
m_sub = _tstoi(mS);
m_Newsub = 1;
mS = "";
UpdateData(false);
}
void CCALCDlg::OnBnClickedMinus()
{
m_sub = _tstoi(mS);
m_Newsub = 2;
mS = "";
UpdateData(false);
}
= 연산에서 처리하기 위해 각 버튼마다 int값의 표시를 만듬.
8.
= 버튼의 코드를 작성
////////////////
까지 하면 사칙연산을 간단하게 할 수 있는 계산기가 완성됩니다.
오오 계산기 오오.
/////////////////////
하지만 이렇게 짜게되면 버튼입력으로 한 내용만. 계산이 가능한 뭔가 모자란 계산기가 된다.
이를 방지하려면 4칙연산과 = 버튼의 처리 시 UpdateData(true); 를 제일 위에 위치시켜주어
에디트 박스에 있는 값을 mS값에 입력시켜주면
잘 작동하게 된다.
////////////////////////
코드파일 업로드.
= 연산에서 처리하기 위해 각 버튼마다 int값의 표시를 만듬.
8.
= 버튼의 코드를 작성
void CCALCDlg::OnBnClickedEq()
{
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
CString exx;
int dab;
switch(m_Newsub)
{
case 1://덧셈
dab = m_sub + _tstoi(mS);
exx.Format(_T("%d"), dab);
mS = exx;
UpdateData(false);
m_sub = _tstoi(mS);
break;
case 2://뺄셈
dab = m_sub - _tstoi(mS);
exx.Format(_T("%d"), dab);
mS = exx;
UpdateData(false);
m_sub = _tstoi(mS);
break;
case 3://곱셈
dab = m_sub * _tstoi(mS);
exx.Format(_T("%d"), dab);
mS = exx;
UpdateData(false);
m_sub = _tstoi(mS);
break;
case 4://나눗셈
dab = m_sub / _tstoi(mS);
exx.Format(_T("%d"), dab);
mS = exx;
UpdateData(false);
m_sub = _tstoi(mS);
break;
}
}
////////////////
까지 하면 사칙연산을 간단하게 할 수 있는 계산기가 완성됩니다.
오오 계산기 오오.
/////////////////////
하지만 이렇게 짜게되면 버튼입력으로 한 내용만. 계산이 가능한 뭔가 모자란 계산기가 된다.
이를 방지하려면 4칙연산과 = 버튼의 처리 시 UpdateData(true); 를 제일 위에 위치시켜주어
에디트 박스에 있는 값을 mS값에 입력시켜주면
잘 작동하게 된다.
////////////////////////
코드파일 업로드.
'공부 > MFC' 카테고리의 다른 글
Visual C++ 2008 MFC Chapter 10 메뉴~ -2 (0) | 2011.12.08 |
---|---|
Visual C++ 2008 MFC Chapter 10 메뉴/바로 가기 키/도구 모음/상태 표시줄 (0) | 2011.12.08 |
계산기 만들기 프로젝트 (5) | 2011.12.07 |
Visual C++ 2008 MFC Chapter 12 버튼 컨트롤 (0) | 2011.12.07 |
Visual C++ 2008 MFC Chapter 11 컨트롤 윈도우의 기본 (0) | 2011.12.07 |