Programming Language/Windows API
사각형 그리기
1. 이중 for문을 이용하여 사각형 그리기
[1] 사각형을 그리고 내부에 몇 번 사각형인지 숫자를 부여한다.
2. 소스
1) 사용자 정의함수
void my_init(HDC hdc, int x, int y) {
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
Rectangle(hdc, x + j * 100, y + i * 100, x + (j + 1) * 100, y + (i + 1) * 100);
TCHAR tmp[20];
_stprintf_s(tmp, _T("%d"), (3 * i) + j + 1);
TextOut(hdc, x + j * 100 + 50, y + i * 100 + 50, tmp, _tcslen(tmp));
}
}
}
2) 윈도우 메세지처리함수
LRESULT CALLBACK WndProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
static int x;
static int y;
switch (message)
{
case WM_CREATE: {
x = 200;
y = 200;
}
break;
case WM_COMMAND:
{
int wmId = LOWORD(wParam);
// 메뉴 선택을 구문 분석합니다.
switch (wmId)
{
case IDM_ABOUT:
DialogBox(hInst, MAKEINTRESOURCE(IDD_ABOUTBOX), hWnd, About);
break;
case IDM_EXIT:
DestroyWindow(hWnd);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
}
break;
case WM_PAINT:
{
PAINTSTRUCT ps;
HDC hdc = BeginPaint(hWnd, &ps);
my_init(hdc, x, y);
EndPaint(hWnd, &ps);
}
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd, message, wParam, lParam);
}
return 0;
}
3. 시연
'Programming Language > Windows API' 카테고리의 다른 글
| 두더지잡기 게임 (0) | 2018.09.30 |
|---|---|
| 입력된 방향키 확인 (0) | 2018.09.30 |
| 도형 자동이동 (0) | 2018.09.30 |
| 마우스로 도형 옮기기 (0) | 2018.09.30 |
| keyboard[마지막] (0) | 2018.09.10 |
댓글