본문 바로가기
『 C 』Languege/winapi

DC의 정보 수정 (그래픽) -1 [GDI,스톡오브젝트]

by Play IT 2017. 10. 9.
반응형

1. GDI오브젝트

펜       HPEN        선을 그을 때 사용된다

브러시 HBRUSH    면을 채울 때 사용된다.

폰트    HFONT      문자 출력에 사용되는 글꼴

비트맵 HBITMAP   비트맵 이미지

팔레트 HPALETTE 팔레트

리전    HRGN        화면상의 영역


2.스톡 오브젝트

BLACK_BRUSH   검정색 브러쉬

GRAY_BRUSH     회색 브러쉬

NULL_BRUSH      투명 브러쉬

WHITE_BRUSH     흰색 브러쉬

DKGRAY_BRUSH  짙은 회색 브러쉬

LTGRAY_BRUSH   옅은 회색 브러쉬

DC_BRUSH          색상 브러쉬 -SetDCBrushColor

BLACK_PEN         검정색 펜

WHITE_PEN          흰색 펜

NULL_PEN           투명 펜

DC_PEN              색상 펜 -SetDCPenColor

ANSI_FIXED_FONT   고정폭 폰트

ANSI_VAR_FONT      가변폭 폰트

DEFAULT_PALETTE  시스템 팔레트


WinMain 예제는 아주 특별한 경우가 아니면 기본적인 면에서 변하지 않기에 쓰지 않았습니다.

WinMain 예제 -<링크>- :아직안올림:

예제 -1

LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)

{

    HDC hdc;

    PAINTSTRUCT ps;

    switch(iMessage){

    case WM_PAINT:

            hdc=BeginPaint(hWnd,&ps);

           Rectangle(hdc,50,50,300,200);

           EndPaint(hWnd,&ps);

           return 0;

    case WM_DESTROY:

           PostQuitMessage(0);

           return 0;

     }

     return(DefWindowProc(hWnd,iMessage,wParam,IParam));

}


예제 -2

LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam)

{

    HDC hdc;

    PAINTSTRUCT ps;

    HBRUSH MyBrush,OldBrush;

    switch(iMessage){

    case WM_PAINT:

            hdc=BeginPaint(hWnd,&ps);

            MyBrush=(HBRUSH)GetStockObject(GRAY_BRUSH);

            OldBrush=(HBRUSH)SelectObject(hdc,MyBrush);

           Rectangle(hdc,50,50,300,200);

           SelectObject(hdc,OldBrush);

           EndPaint(hWnd,&ps);

           return 0;

    case WM_DESTROY:

           PostQuitMessage(0);

           return 0;

     }

     return(DefWindowProc(hWnd,iMessage,wParam,IParam));

}


예제1 은 선으로 이루어진 도형이 출력되며 예제2는 그안에 색이 입혀져 출력되는것을 보실 겁니다.


3. RGB 살펴보고 가시죠

0 0 0 -검정색

255 255 255 -흰색

128 128 128 회색

255 0 0 빨간색

0 255 0 초록색

0 0 255 파란색

255 255 0 노란색

255 0 255 분홍색

0 255 255 하늘색

HGDIOBJ SelectObject( HDC hdc, HGDIOBJ hgdiobj);


제 2장에서는 펜과 브러시 Old 의미 투명오브젝트에 대한 내용을 다룰것 입니다.

반응형

댓글