반응형
C++ GDI Font, Brush 생성과 삭제
c++ GDI 객체생성 하는 방법과 삭제하는 방법입니다.
Font 생성과 Brush 생성하고 객체를 해제를 꼭해주어야 합니다.
뭐 어려운 내용은 없고 폰트 생성 옵션과 브러쉬 생성 옵션을 숙지 하시면 됩니다.
1 //////////////////////////////////////////////////////////////////////////
2 /**
3 @brief : CreateGDIObject
4
5 @date : 2010-05-25 오후 4:27:27
6 @author: Kwangho Park
7 @remark: GDI 생성. Font, Brush 등.
8 수정내역
9 -------------------------------------------------------------------------
10 2010-05-25
11 */
12 BOOL H3PGridSetting::CreateGDIObject()
13 {
14 // 폰트생성.
15 m_fontBold.CreateFont(12, 0, 0, 0, 700, false, false, false, HANGEUL_CHARSET, 0, 0, 0, 0, "굴림");
16 if(!m_fontBold.m_hFont)
17 return FALSE;
18
19 // 폰트생성.
20 m_fontNormal.CreateFont(12, 0, 0, 0, 500, false, false, false, HANGEUL_CHARSET, 0, 0, 0, 0, "굴림");
21 if(!m_fontNormal.m_hFont)
22 return FALSE;
23
24 // 브러쉬 생성.
25 m_hWhiteBrush = CreateSolidBrush(WHITE_COLOR); // 255,255,255
26 if(!m_hWhiteBrush)
27 return FALSE;
28
29 // 브러쉬 생성.
30 m_hSearchBrush = CreateSolidBrush(HANARO3_COLOR_GC); // 238,238,238
31 if(!m_hSearchBrush)
32 return FALSE;
33
34 return TRUE;
35 }
36
37 //////////////////////////////////////////////////////////////////////////
38 /**
39 @brief : DeleteGDIObject
40
41 @date : 2010-05-25 오후 4:27:57
42 @author: Kwangho Park
43 @remark: GDI 삭제(해제)
44 수정내역
45 -------------------------------------------------------------------------
46 2010-05-25
47 */
48 BOOL H3PGridSetting::DeleteGDIObject()
49 {
50 // Font 존재하면 삭제처리.
51 if(m_fontBold.m_hFont)
52 m_fontBold.DeleteObject();
53
54 if(m_fontNormal.m_hFont)
55 m_fontNormal.DeleteObject();
56
57 // Brush 존재하면 삭제처리.
58 if(m_hWhiteBrush)
59 ::DeleteObject(m_hWhiteBrush);
60
61 if(m_hSearchBrush)
62 ::DeleteObject(m_hSearchBrush);
63
64 return TRUE;
65 }