Windows는 디바이스 컨텍스트에서 사용할 수 있는 다양한 그리기 도구를 제공합니다. 선을 그리는 펜, 내부를 채우는 브러시 및 텍스트를 그리는 글꼴을 제공합니다. MFC는 Windows의 그리기 도구에 해당하는 그래픽 개체 클래스를 제공합니다. 아래 표에서는 사용 가능한 클래스와 동등한 Windows GDI(그래픽 디바이스 인터페이스) 핸들 형식을 보여 줍니다.
비고
자세한 내용은 GDI+ SDK 설명서를 참조하세요.
이 문서에서는 이러한 그래픽 개체 클래스의 사용에 대해 설명합니다.
Windows GDI 개체에 대한 클래스
클래스 | Windows 핸들 형식 |
---|---|
CPen | HPEN |
CBrush | HBRUSH |
CFont | HFONT |
CBitmap | HBITMAP |
CPalette | HPALETTE |
CRgn | HRGN |
비고
CImage 클래스는 향상된 비트맵 지원을 제공합니다.
클래스 라이브러리의 각 그래픽 개체 클래스에는 해당 클래스의 그래픽 개체를 만들 수 있는 생성자가 있으며, 이 생성자는 다음과 같은 적절한 create 함수를 CreatePen
사용하여 초기화해야 합니다.
클래스 라이브러리의 각 그래픽 개체 클래스에는 MFC 개체를 연결된 Windows 핸들로 캐스팅하는 캐스트 연산자가 있습니다. 결과 핸들은 연결된 개체가 이를 분리할 때까지 유효합니다. 개체의 Detach
멤버 함수를 사용하여 핸들을 분리합니다.
다음 코드는 객체를 CPen
Windows 핸들로 캐스팅하는 작업을 수행합니다.
CPen myPen;
myPen.CreatePen(PS_COSMETIC, 1, RGB(255, 255, 0));
HPEN hMyPen = (HPEN)myPen;
디바이스 컨텍스트에서 그래픽 개체를 만들려면
스택 프레임에서 그래픽 개체를 정의합니다. 형식별 create 함수(예:
CreatePen
.)를 사용하여 개체를 초기화합니다. 또는 생성자에서 개체를 초기화합니다. 예제 코드를 제공하는 1단계 및 2단계 만들기에 대한 설명을 참조하세요.개체를 현재 디바이스 컨텍스트에 선택하여 이전에 선택한 이전 그래픽 개체를 저장합니다.
현재 그래픽 개체를 사용하여 완료되면 이전 그래픽 개체를 디바이스 컨텍스트로 다시 선택하여 상태를 복원합니다.
범위가 종료될 때 프레임 할당 그래픽 개체가 자동으로 삭제되도록 허용합니다.
비고
그래픽 개체를 반복적으로 사용하는 경우 필요할 때마다 한 번 할당하고 디바이스 컨텍스트로 선택할 수 있습니다. 더 이상 필요하지 않은 경우 이러한 개체를 삭제해야 합니다.