3. 기초 프로그래밍 3. 기초 프로그래밍 실습 5
Download
Report
Transcript 3. 기초 프로그래밍 3. 기초 프로그래밍 실습 5
3장. 기초 프로그래밍
3. 기초 프로그래밍
3.3 체크 상자 (Check Box)
여러 항목을 한꺼번에 선택할 수 있다
체크 여부에 따라 상태값이 달라 진다.
체크 함
체크 안함
False
: True
: False
True
3. 기초 프로그래밍
실습 4 : 체크상자 활용
에디터상자 1개, 체크상자 1개, 버튼 1개를 만들고 아래 기능을 부여한다.
체크 상자를 체크하면 에디터상자에 아래 문자열이 표시된다.
체크 상자를 체크 해제하면 아래 문자열로 바뀐다.
3. 기초 프로그래밍
따라하기
1.
새로 MFC 응용프로그램 프로젝트를 생성한다. (이름 : Check)
2.
응용프로그램 종류를 [대화 상자 기반]으로,
[유니코드 라이브러리 사용]을 체크 해제한다.
3.
화면에 있는 컨트롤들을 삭제하여 깨끗하게 한다.
4.
컨트롤 도구 모음을
이용하여 우측과 같이
만든다.
IDC_EDIT1
IDC_CHECK1
IDC_BUTTON1
3. 기초 프로그래밍
5. 에디터 상자를 우측 마우스 클릭한 후 클래스 마법사를 실행하고
[멤버 변수] 탭을 클릭한다.
3. 기초 프로그래밍
6.
IDC_EDIT1에 대하여 [변수 추가] 를 한다.
(변수이름 : m_strEdit, 범주 : Value, 형식 : CString)
3. 기초 프로그래밍
7. IDC_CHECK1에 대하여 [변수 추가] 를 한다.
(변수이름 : m_ctlCheck, 범주 : Value, 형식 : BOOL)
False
True
3. 기초 프로그래밍
8. 체크 상자를 더블 클릭하고 다음의 코드를 추가한다.
void CCheckDlg::OnClickedCheck1()
{
// TODO : 여기에 컨트롤 알림 처리기 코드를 추가합니다.
UpdateData(TRUE);
if (m_ctlCheck == TRUE)
m_strEdit="체크상자가 체크되었습니다.";
else
m_strEdit="체크상자가 해제되었습니다.";
UpdateData(FALSE);
}
3. 기초 프로그래밍
9.
종료 버튼을 더블 클릭하고 아래 코드를 추가한다.
void CCheckDlg::OnClickedButton1()
{
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
OnOK();
다이얼로그 상자 종료
}
10. 실행 후 결과를 확인해 본다.
3. 기초 프로그래밍
라디오 버튼 (Radio Button)
여러 개 중에서 하나의 상태만 선택
해야 할 때 주로 사용 (배타적 선택)
반드시 그룹 상자와 함께 사용된다.
예
선택
: True
선택 안함 : False
3. 기초 프로그래밍
그룹 상자(Group Box)
컨트롤들을 그룹으로 묶을 때 사용
3. 기초 프로그래밍
실습 5 : 그룹상자와 라디오버튼 활용
에디터상자 1개, 그룹상자 1개, 라디오버튼 3개, 버튼 1개를 만들고
아래 기능을 부여한다.
라디오버튼1을 선택하면 에디터상자에 아래 문자열이 표시된다.
다른 라디오버튼을 선택하면 해당되는 문자열로 바뀐다.
3. 기초 프로그래밍
따라하기
1.
새로 MFC 응용프로그램 프로젝트를 생성한다. (이름 : Radio)
2.
응용프로그램 종류를 [대화 상자 기반]으로,
[유니코드 라이브러리 사용]을 체크 해제한다.
3.
화면에 있는 컨트롤들을 삭제하여 깨끗하게 한다.
3. 기초 프로그래밍
4. 컨트롤 도구 모음을 이용하여 다음 순서대로 만든다.
(반드시 라디오버튼보다 그룹상자를 먼저 만들어야 함)
IDC_STATIC
IDC_RADIO1
IDC_RADIO3
IDC_BUTTON1
IDC_EDIT1
3. 기초 프로그래밍
5.
라디오버튼1 을 클릭하고 속성창에서 Group을 True로 바꾼다.
다른 라디오 버튼은 그냥 놔둔다.
3. 기초 프로그래밍
6. 우측마우스를 클릭하여 클래스마법사를 실행한다. 클래스마법사
창이 뜨면 [멤버변수] 탭을 누르고 IDC_EDIT1과 IDC_RADIO1에
대하여 각각 [변수 추가] 를 한다.
IDC_EDIT1
IDC_RADIO1
3. 기초 프로그래밍
8.
Radio1을 더블 클릭하고 다음의 코드를 추가한다.
void CRadioDlg::OnClickedRadio1()
{
// TODO : 여기에 컨트롤 알림 처리기 코드를 추가합니다.
UpdateData(TRUE);
m_Edit="라디오버튼 1이 선택되었습니다.";
UpdateData(FALSE);
}
3. 기초 프로그래밍
9.
Radio2을 더블 클릭하고 다음의 코드를 추가한다.
void CRadioDlg::OnClickedRadio2()
{
// TODO : 여기에 컨트롤 알림 처리기 코드를 추가합니다.
UpdateData(TRUE);
m_Edit="라디오버튼 2가 선택되었습니다.";
UpdateData(FALSE);
}
3. 기초 프로그래밍
10.
Radio3을 더블 클릭하고 다음의 코드를 추가한다.
void CRadioDlg::OnClickedRadio3()
{
// TODO : 여기에 컨트롤 알림 처리기 코드를 추가합니다.
UpdateData(TRUE);
m_Edit="라디오버튼 3이 선택되었습니다.";
UpdateData(FALSE);
}
3. 기초 프로그래밍
11. 종료 버튼을 더블 클릭하고 아래 코드를 추가한다.
void CRadioDlg::OnClickedButton1()
{
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
OnOK();
다이얼로그 상자 종료
}
11. 실행 후 결과를 확인해 본다.
3. 기초 프로그래밍
3.4 스태틱 텍스트 컨트롤 (Static Text)
문자열을 표시하기 위한 컨트롤
- 제목, 간단한 설명 등 표시에 사용
Caption 에 지정된 문자열이 화면에
표시됨
문자열 입력을 받을 수 없음. - 단순
히 주어진 문자열을 화면에 표시만
가능
3. 기초 프로그래밍
실습 6
1.
앞서 실습한 라디오버튼 화면에 스태틱 텍스트 컨트롤을
추가하고 [라디오버튼 실습]이라고 표시해 본다.
컨트롤 속성 중 Caption 을
“라디오버튼 실습”으로 바꾼다.
3. 기초 프로그래밍
연습문제 2
입력한 점수가 80점 이상이면 “합격” 그 이하면 “불합격”
을 표시하도록 프로그래밍 할 것
3. 기초 프로그래밍
따라하기
1.
새로 MFC 응용프로그램 프로젝트를 생성한다. (이름 : exam1)
2.
응용프로그램 종류를 [대화 상자 기반]으로,
[유니코드 라이브러리 사용]을 체크 해제한다.
3.
화면에 있는 컨트롤들을 삭제하여 깨끗하게 한다.
3. 기초 프로그래밍
4. 컨트롤 도구 모음을 이용하여 다음과 같이 만든다.
IDC_EDIT1
IDC_EDIT2
IDC_BUTTON1
IDC_STATIC
Number 속성을
True로 하면 숫자만
입력할 수 있다.
3. 기초 프로그래밍
5. 에디터 상자를 우측 마우스 클릭한 후 클래스 마법사를 실행하고
[멤버 변수] 탭을 클릭한다.
3. 기초 프로그래밍
6.
IDC_EDIT1과 IDC_EDIT2에 대하여 각각 [변수 추가] 를 한다.
(주의 : EDIT1의 변수 형식은 int (정수형) 으로 한다.)
IDC_EDIT1
IDC_EDIT2
Edit1에 입력할
내용은 점수(숫자)
이므로
3. 기초 프로그래밍
7.
[확인]을 더블 클릭하고 다음의 코드를 추가하고 실행해 본다.
void Cexam1Dlg::OnClickedButton1()
{
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
UpdateData(TRUE);
if (m_Edit1 >= 80)
{
m_Edit2 = "합격";
}
else
{
m_Edit2 = "불합격";
}
UpdateData(FALSE);
}
3. 기초 프로그래밍
연습문제 3
입력한 점수에 따라 아래 평점이 표시되도록 할 것
평점
if (m_Edit1 >= 90)
90~100
80~89
70~79
60~69
0~59
:A
:B
:C
:D
:F
m_Edit2 = "A";
else if (m_Edit1 >= 80)
m_Edit2 = "B";
else if (m_Edit1 >= 70)
m_Edit2 = "C";
else if (m_Edit1 >= 60)
m_Edit2 = "D";
else
m_Edit2 = "F";
중괄호 생략