-
1. MFC란?I'm a Developer/MFC 2015. 8. 7. 19:35
MFC(Microsoft Foundation Class)는 윈도우 프로그래밍에 필요한 약 300여 개의 클래스를 계층구조적으로 구현해 놓은 클래스 라이브러리 입니다. MFC 클래스들은 다음과 같은 부류로 나누어 볼 수 있습니다.
- 프로그램의 뼈대를 이루는 클래스
- 윈도우 관련 클래스
- 그래픽 관련 클래스
- 자료 구조 클래스
- 파일 및 데이터베이스 관련 클래스
- 인터넷 관련 클래스
- OLE 관련 클래스
- 에러 처리 및 디버깅을 위한 클래스
먼저 다음의 MFC의 자료구조 클래스들을 알아두면 앞으로 공부하는데 더 도움이 될 것입니다.
CPoint 클래스
기능
2차원 좌표계의 점을 저장
주요 멤버변수
int x, y
주요 멤버함수
연산자 함수 : =, ==, !=, +=, -=, +, - 등을 이용한 연산기능
Offset 함수 : 좌표를 주어진 값만큼 상하좌우로
Ex)
CPoint p1(10, 20); // 점의 좌표 (10, 20)을 p2에 저장
CPoint p2(50, 60); // 점의 좌표 (50, 60)을 p2에 저장
p1.Offset(20, 30); // p1을 x축으로 20만큼, y축으로 30만큼 이동
CPoint p3 = p1 + p2; // p1과 p2의 x, y 좌표를 각각 더해서 p3에 저장
CSize 클래스
기능
가로, 세로 길이를 저장합니다. x, y 좌표 대신 가로, 세로 길이를 저장한다는 점을 제외하면 CPoint 클래스와 기능이 거의 유사
주요 멤버변수
int cx, cy
주요 멤버함수
연산자 함수 : =, ==, !=, +=, -=, +, - 등을 이용한 연산기능
Ex)
CPoint p1(10, 20); // 점의 좌표 (10, 20)을 p2에 저장
CPoint p2(50, 60); // 점의 좌표 (50, 60)을 p2에 저장
CSize size = p1 - p2; // p1과 p2사이의 가로 세로 거리를 size에 저장
CRect 클래스
기능
사각형의 좌측 상단과 우측 하단의 좌표를 저장
주요 멤버변수
int left, top, right, bottom 주요 멤버함수
연산자 함수 : =, ==, !=, +=, -=, +, - 등을 이용한 연산기능
Width, Height : 사각형의 가로, 세로 길이를 반환
MoveTox, MoveToY, MoveToXY, OffsetRect : 사각형의 좌표 이동
DeflateRect, InflateRect : 사각형을 축소 또는 확대
IntersectRect, UnionRect : 두 사각형의 겹치는 영역 계산
PtInRect : 어떤점이 사각형 내부에 있는지 판단
Ex)
CRect rc1(10, 10, 40, 50);
int w = rc1.Width();
int h = rc2.Height();
CString 클래스
기능
문자열을 저장
주요 멤버변수
public 멤버 변수 없음 주요 멤버함수
연산자 함수 : =, ==, !=, +=, -=, +, - 등을 이용한 연산기능
Compare, CompareNoCase : 두 문자열 비교
Delete : 특정 문자열 삭제
Find, FindOneOf, ReverseFind : 문자열 검색
Format : printf 문을 쓰듯이 형식에 맞춰 문자열을 저장
Insert : 문자열 삽입
MakeLower, MakeUpper : 소문자 또는 대문자로 변환
Left, Mid, Right : 문자열의 좌측, 가운데, 우측에서 일부를 발췌
Remove : 특정 문자열 제거
Replace : 특정 문자열을 자른 문자열로 대치
SpanExcluding : 주어진 문자열들을 제거하고 나머지만 남김
SpanIncluding : 주어진 문자열만 남기고 나머지를 제거
TrimLeft, TrimRight : 공백 문자 제거
Ex)
int a = 20;
CString str;
str.Format("변수 a에 저장된 값은 %d 입니다.", a); //str에 문자열 저장
[출처 - Visual C++6 완벽가이드 2nd Edition 영진닷컴]
'I'm a Developer > MFC' 카테고리의 다른 글
OnPaint OnDraw (1) 2015.08.18 윈도우 메뉴 (0) 2015.08.17 ComboBox (0) 2015.08.17 3. 윈도우 프로그램의 뼈대 (0) 2015.08.10 2. 변수 표기법 (0) 2015.08.07