Chapter 01 MFC란 무엇인가? ... 17 MFC란? ... 18 MFC의 구조 ... 20 MFC 어플리케이션(응용 프로그램) ... 23 아키텍처(MFC Application Architecture) ... 23 Chapter 02 프로그래밍 전에 알아야 할 것들 ... 25 비주얼 C++ 컴파일러 ... 26 겉모양을 살펴보자 ... 26 컴파일 하는 방법 ... 34 파일 저장하기 ... 40 헝가리안 표기법 ... 43 메시지란 무엇인가? ... 44 비주얼 C++에서 사용하는 확장자 ... 47 Chapter 03 컨트롤 다루기 ... 49 버튼 만들기 ... 51 버튼 이름 바꾸기 ... 56 버튼에 메시지 상자 달기 ... 58 버튼을 클릭 하면 제목이 변하는 버튼 만들기 ... 62 버튼 숨기기 ... 67 버튼을 클릭하지 못하게 하기 ... 70 에디터 상자 만들기 ... 73 에디터 상자 2개 만들기 ... 73 패스워드 프로그램 만들기 ... 77 에디터 상자를 이용해서 프로그램 실행하기 ... 81 체크 상자 만들기 ... 85 체크 상자를 체크하면 메시지 상자 출력하기 ... 85 콤보 상자(Combo Box) 만들기 ... 88 콤보 상자의 목록에서 선택된 문자열을 메시지 상자로 출력하기 ... 88 메뉴 만들기 ... 92 메뉴에 소스코드 연결하기 ... 96 메뉴에 ABout 상자 연결하기 ... 98 그림 상자 만들기 ... 101 다이얼로그 상자에 그림 삽입하기 ... 101 Progress 컨트롤 만들기 ... 105 버튼을 클릭 하면 그래프가 올라가게 만들기 ... 105 슬라이드 컨트롤 ... 109 슬라이드 컨트롤을 움직이면 에디터 상자에 수 출력하기 ... 110 리스트 상자 만들기 ... 113 콤보 상자에 있는 메뉴를 리스트 상자에 추가하기 ... 113 리스트 상자에서 리스트를 클릭 하면 스태틱 상자에 출력하기 ... 116 리스트 컨트롤 만들기 ... 120 간단한 메일주소 입력하는 프로그램 ... 120 스크롤 바 ... 130 숫자 올리기 내리기 ... 130 애니메이트 컨트롤 ... 138 동영상 플레이하기 ... 138 Tree 컨트롤 ... 142 Tree 컨트롤로 학교, 반, 학생이름 표시하기 ... 143 Chapter 04 다이얼로그 상자 ... 151 다이얼로그 상자의 아이콘 변경하기 ... 152 다이얼로그 상자의 옵션에 대하여 알아보자 ... 156 다이얼로그 상자의 제목을 메시지 상자로 출력 ... 157 다이얼로그 상자의 제목 변경하기 ... 160 다이얼로그 상자의 크기 변경하기 ... 164 Chapter 05 텍스트 ... 169 다이얼로그 상자에 텍스트 출력하기 ... 170 WM_PAINT 메시지를 이용하여 텍스트 출력 ... 173 텍스트의 색 변경하기 ... 178 Chapter 06 마우스에 대하여 알아보자 ... 185 마우스 버튼에 대한 메시지의 반응 ... 186 마우스 볼의 x, y 좌표 값을 알아보자 ... 189 Chapter 07 타이머 ... 193 초 재는 프로그램 ... 195 텍스트 움직이기 ... 198 Chapter 08 간단한 그림 그리기 프로그램을 만들어보자 ... 205 점찍는 프로그램 Verl.0 ... 206 점찍는 프로그램 Ver2.0 ... 209 선 그리는 프로그램 Verl.0 ... 212 선 그리는 프로그램 Ver2.0 ... 216 선 그리는 프로그램 Ver3.0 ... 219 선 그리는 프로그램 Ver4.0 ... 223 Chapter 09 간단하게 시스템의 정보를 알아보자 ... 229 간단한 시스템 정보 ... 230 메모리의 정보를 알아보자 ... 244 실시간 메모리 정보 출력 프로그램 ... 248 디스크 정보 출력 프로그램 Ver 1.0 ... 251 디스크 정보 출력 프로그램 Ver2.0 ... 255 디스크 정보 출력 프로그램 Ver3.0 ... 260 프로세스의 환경 변수를 출력하는 프로그램 ... 266 현재 쓰레드의 사용자 이름을 출력하는 프로그램 ... 270 윈도우즈가 설치된 폴더를 알아내는 프로그램 ... 273 윈도우즈의 버전을 알아내는 프로그램 ... 276 프로세스가 시작될 때 그 부모 프로세서가 설정해 놓은 정보들을 출력하는 프로그램 ... 280 현재의 시간과 날짜를 구하는 프로그램 ... 286 Chapter 10 비트맵에 대하여 알아보자 ... 291 비트맵 다이얼로그 상자에 출력하기 ... 292 애니메이션 로그 만들기 ... 298 투명 비트맵 ... 303 비트맵 스크롤 ... 307 Chapter 11 트라이 아이콘 ... 313 Chapter 12 공통 대화상자 ... 323 폰트 선택 공통 대화상자 ... 324 파일 선택 공통 대화상자 ... 334 색상 선택 공통 대화상자 ... 340 Chapter 13 서로 다른 프로그램간의 통신 ... 345 다른 프로그램의 WM_TTMER 메시지 ... 346 발생하기 ... 346 Spy++ ... 351 Chapter 14 사운드와 동영상 연주하기 ... 355 Wav파일 연주하기 ... 356 리소스에 있는 Wav파일 연주하기 ... 362 레지스트리에 등록된 Wav 연주 ... 364 MCI를 이용한 Wav파일 연주하기 ... 370 MID연주하는프로그램 ... 378 AVI연주하는 프로그램 ... 387 Chapter 15 캐럿 ... 393 캐럿이란? ... 394 캐럿 생성하기 ... 395 Chapter 16 초기화 파일 ... 401 초기화 파일이란? ... 402 초기화 파일의 구조 ... 402 win.ini 초기화 파일 읽어오는 프로그램 ... 403 사용자 초기화 파일 ... 408 Chapter 17 문자열 변환 ... 415 문자열 대〈-〉소문자 변환 ... 416 Chapter 18 데이터베이스 ... 421 MS-Access97을 이총한 MDB 파일 생성하기 ... 422 MS-Access란? ... 423 DAO를 이용한 MDB 파일 읽기 ... 431 ODBC를 사용한 데이터베이스 프로그램 ... 441 부록 01 변수와 변수 선언 ... 449 변수란? ... 450 상수란? ... 451 상수의 종류 ... 451 변수 선언 ... 452 예약어 ... 453 예제 1) 각각의 변수 값을 출력하는 프로그램 ... 453 연산자의 종료 ... 457 예제 2) 두 수의 합, 차, 곱, 몫을 구하는 프로그램 ... 457 예제 3) 총점과 평균을 구하는 프로그램 ... 460 예제 4) 원의 면적과 둘레를 구하는 프로그램 ... 462 예제 5) 몫과 나머지를 구하는 프로그램 ... 464 관계 연산자 ... 466 논리 연산자 ... 466 예제 6) 논리 연산을 하는 프로그램 ... 467 증가, 감소 연산자 ... 469 예제 7) 증가, 감소 연산을 하는 프로그램 ... 469 예제 8) 증가 연산자의 && 연산 프로그램 ... 471 예제 9) 증감 연산자를 이용한 덧셈 ... 473 대입 연산자 ... 475 예제 10) 대입 연산 프로그램 ... 475 콤마(,) 연산자 ... 478 예제 11) 차례로 값을 대입하는 프로그램 ... 478 3항 연산자 ... 480 예제 12) 3항 연산 프로그램 ... 480 비트 연산자 ... 482 예제 13) 비트 연산을 하는 프로그램 ... 483 그 외 예제 ... 485 예제 14) 일년을 시간 분,초로 구분하는 프로그램 ... 485 예제 15) 변수의 크기를 알아내는 프로그램 ... 487 예제 16) 문자열 변수의 크기를 알아내는 프로그램 ... 489 부록 02 입력 ... 493 예제 17) 사용자의 정보를 얻어내는 프로그램 ... 494 예제 18) 두 수를 입력받아 사칙 연산을 하는 프로그램 ... 497 예제 19) 각각의 두 수를 입력받아 각각 연산을 하는 프로그램 ... 500 예제 20) 정사각형의 한 변의 길이를 입력받아 사각형의 둘레를 구하는 프로그램 ... 506 예제 21) 두 사람의 점수를 입력받아 총점과 평균을 구하는 프로그램 ... 509 예제 22) 삼각형의 넓이를 구하는 프로그램 ... 512 예제 23) 두 개의 수를 비교하여 어느 수가 더 큰지 알아내는 프로그램 ... 515 부록 03 제어문 ... 519 제어문이란? ... 520 제어문의 종류 ... 520 if∼else문 ... 520 예제 24) 두 개의 수를 입력받아 어느 수가 더 큰지 알아내는 프로그램 ... 521 예제 25) 두 개의 수를 입력받아 두 수가 같은지 다른지 알아내는 프로그램 ... 524 예제 26) 수를 입력받아 양수인지 음수인지 알아내는 프로그램 ... 527 예제 27) 간단한 영한 사전 ... 530 예제 28) 친구의 정보를 출력하는 프로그램 ... 533 예제 29) 두 사람의 과목 점수를 비교하여 어느 사람의 과목 점수가 높은지 알아내는 프로그램 ... 537 예제 30) 덧셈의 답이 맞는지 알아내는 프로그램 ... 541 예제 31) 길이의 단위인 피트를 미터로 또는 미터를 피트로 환산해 주는 프로그램 ... 543 switch∼case문 ... 546 예제 32) 점수를 입력받아 학점을 판정하는 프로그램 ... 547 예제 33) 한 문자를 입력하면 해당하는 단어를 출력하는 프로그램 ... 551 예제 34) 번호로 선택해서 연산하기 ... 555 예제 35) switch문에 또 switch문 ... 559 for문 ... 566 예제 36) 1부터 100까지의 합을 구하는 프로그램 ... 566 예제 37) 1부터 10까지 출력하는 프로그램 ... 569 예제 38) 각각의 에디터 상자에 1000단위로 1000부터 10000까지 출력하는 프로그램 ... 572 예제 39) 1에서 10까지 짝수의 합과 홀수의 합을 구하는 프로그램 ... 576 예제 40) A부터 B까지의 합을 구하는 프로그램 ... 579 예제 41) 1부터 1000까지의 수를 출력하면서 입력받은 수만 출력하는 프로그램 ... 582 다중 for문 ... 586 예제 42) 1부터 5까지의 수를 5번 출력하는 프로그램 ... 586 예제 43) 구구단 출력 프로그램 ... 589 부록 04 배열 ... 599 배열이란? ... 600 차원 배열 ... 600 예제 44) 7개의 수를 입력받아 배열에 저장하고 출력하는 프로그램 ... 602 예제 45) 짝수 번째 배열의 기억 장소에 저장된 수를 출력하는 프로그램 ... 007 예제 46) 평균과 총점을 구하는 프로그램 ... 612 예제 47) 전체 날 수를 구하는 프로그램 ... 615 예제 48) 작은 수부터 큰 수로 정렬하는 프로그램 ... 618 2차원 배열 ... 623 예제 49) 2차원 배열에 수를 배열하고 출력하는 프로그램 ... 624 예제 50) 배열의 값이 1이면 5를 출력하는 프로그램 ... 629 부록 05 포인터 ... 633 포인터란? ... 634 포인터 선언 ... 634 예제 51) 포인터 사용예제 ... 635 예제 52) 포인터의 사용2 ... 637 예제 53) 실수형 포인터 ... 639 예제 54) 포인터에서의 배열처리 ... 641 예제 55) 포인터를 이용한 배열의 합 ... 643 예제 56) 포인터와 문자열 ... 645 예제 57) 문자열의 일부만 출력 ... 647