문자열 출력
Programming/API 2015. 6. 8. 13:59BOOL TextOut(HDC hdc, int nXStart, int nYStart, LPCTSTR lpString, int cbString);
1. HDC hdc
- DC의 핸들
2. int nXStrat, int nYStart
- 문자열 출력될 좌표
3. LPCTSTR lpString
- 출력할 문자열을 담고있는 문자열 포인터
4. int cbString
- 출력할 문자열의길이
- lstrlen함수로 문자열의 길이를 알수있다.
TextOut은 한줄만 출력할 수 있다.
int DrawText(HDC hdc, LPCTSTR lpString, int nCount, LPRECT lpRect, UINT uFormat);
- 많은 문자열을 출력하기 위한 함수
이 함수는 사각영역을 정의하여 영역 안에 문자열을 출력할 수 있으며 여러 가지 포맷을 설정하는 기능이 있다.
윈도우즈에서는 사각 영역을 정의할 때 다음과같이 정의된 RECT구조체를 사용한다.
typedef sturct_RECT
{
LONG left;
LONG top;
LONG right;
LONG bottom;
}RECT;
첫번재 인수 hdc , 두번째 인수는 출력할 문자열 세번째 인수는 출력할 문자열의 길이인데
이 값이 -1이면 NULL종료 문자열로 간주하므로 문자열 상수를 바로 출력할 수 있다.
다섯번째 uFormat은 DrawText함수가 문자열을 출력할 방법을 지정하는 플래그이다.
값 |
설명 |
DT_LEFT |
수평 왼쪽 정렬 |
DT_RIGHT |
수평 오른쪽 정렬 |
DT_CENTER |
수평 중앙 정렬 |
DT_BOTTOM |
사각영역의 바닥에 문자열을 출력 |
DT_VCENTER |
사각영역의 수직 중앙에 문자열을 출력 |
DT_WORDBREAK |
사각 영역의 오른쪽 끝에서 자동 개행 |
DT_SINGLELINE |
한 줄로 출력 |
DT_NOCLIP |
사각영역의 경계를 벗어나도 문자열 자르지 않고 그대로 출력 |
'Programming > API' 카테고리의 다른 글
마우스 입력 (0) | 2015.06.08 |
---|---|
그래픽 출력, 메세지 박스 (0) | 2015.06.08 |
DC (0) | 2015.06.07 |
핸들 (0) | 2015.06.07 |
사용자 정의 데이터 (0) | 2015.06.07 |