본문 바로가기

Google AdSense

MFC

Brush Handle값 받아서 테두리없는 사각형패턴

by 박__주홍 2020. 9. 9.

이제 Pen, Brush로 선, 도형 색상이든 그림을 그릴때 무엇을 색상이든 크기등을 조정할 수 있게되었다. 차차 필요한 것은 알아가기로 하자.

 

LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
if (uMsg == WM_DESTROY)PostQuitMessage(0);
else if (uMsg == WM_LBUTTONDOWN) {
HDC h_dc = ::GetDC(hWnd);
HBRUSH h_brush;
const wchar_t* p_style_string[6] = { L"HS_BDIAGONAL",L"HS_CROSS",L"HS_DIAGCROSS",
L"HS_FDIAGONAL",L"HS_HORIZONTAL",L"HS_VERTICAL" };
int brush_style[6] = { HS_BDIAGONAL,HS_CROSS,HS_DIAGCROSS,
HS_FDIAGONAL,HS_HORIZONTAL,HS_VERTICAL };
SetBkMode(h_dc, TRANSPARENT);
HGDIOBJ h_old_brush = GetCurrentObject(h_dc, OBJ_BRUSH);
RECT r;

for (int i = 0; i < 6; i++) {
TextOut(h_dc, 10, 10 + i * 30, p_style_string[i],
wcslen(p_style_string[i]));
h_brush = CreateHatchBrush(brush_style[i], RGB(0, 0, 255));

SetRect(&r, 200, 5 + i * 30, 400, 30 + i * 30);
FillRect(h_dc, &r, h_brush);

DeleteObject(h_brush);
}
SelectObject(h_dc, h_old_brush);

ReleaseDC(hWnd, h_dc);
}

return DefWindowProc(hWnd, uMsg, wParam, lParam);
}

'MFC' 카테고리의 다른 글

오목  (0) 2020.09.12
Pen Handle값 받아서 Pen이나 Brush 다르게 그리는 것  (0) 2020.09.09
BitBlt,WM_CLOSE  (0) 2020.09.07
마우스로 사각형 움직이기  (0) 2020.09.06
선그리기  (0) 2020.09.05

댓글