DC 를 얻는 방법

API Reference 2007. 10. 17. 10:32

DC 를 얻는 첫 번째 방법


HDC GetDC( HWND hWnd );

int ReleaseDC( HWND hWnd, HDC hDC );


DC 는 주로 하나의 윈도우와 연관되는 출력 정보를 가진다. 그래서 인수로 어떤 윈도우에 대한 DC 가 필요한가를 밝혀야 한다.  GetDC 는 hWnd 가 가리키는 윈도우에 적당한 DC 를 만들어 그 핸들을 리턴한다.


GetDC 에 의해 얻어진 핸들은 사용 후에 반드시 ReleaseDC 함수로 해제해야 한다.




DC 를 얻는 두 번째 방법


HDC BeginPaint( HWND hWnd, LPPAINTSTRUCT lpPaint );

BOOL EndPaint( HWND hWnd, CONST PAINTSTRUCT *lpPaint );


WM_PAINT 메시지 루틴에서만 사용할 수 있다.

BeginPaint 함수는 윈도우 핸들 외에도 페인트 정보 구조체를 인수로 요구하며 이 구조체에 그림 그리기에 필요한 여러 가지 복잡한 정보를 리턴한다.


typedef structPAINTSTRUCT

{

    HDC    hdc;

    BOOL  fErase;

    RECT  rcPaint;

    BOOL  fRestore;

    BOOL  flncUpdate;

    BYTE  rgbReserved[16];

} PAINTSTRUCT;


앞의 세 멤버는 사용자가 사용하는 멤버이며 나머지 세 멤버는 윈도우즈가 내부적으로 사용하므로 사용자가 건드려서는 안 된다.

Posted by 명혀니
,