버튼 모양을 맘대로 만들어 줄 때.. Bitmap으로 바꿔주기 위해 사용한다.
Owner Draw라는 기법(?)인데 Combo, List, Button에 사용한다.
버튼으로 예를 들면
Dialog에 Button을 그린 후 Add Variation해서 CButton으로 등록한다.
변수이름을 m_btnTest로 했으면 CButton m_btnTest로 돼있을텐데 여기서 변수형식 CButton을 강제로 CBitmapButton으로 바꿔준다. (CButton을 상속받은 클래스이다.)
버튼의 4가지 상태를 등록할 수 있는데,
가만히 있을때(U), 눌렸을 때(D), 포커스가 갔을때(F), 무효됐을때(D) 이렇게 4가지이다.
그 후 간단하게 활용해보면 OnInitDialog() 함수에다가 아래줄을 추가해준다.
m_btnTest.LoadBitmaps(U일때Bitmap이름, D일때 Bitmap이름, F일때 Bitmap이름, D일때 Bitmap이름);
예를 들어 가만히 있을 때의 비트맵 이름이 IDB_TEST_U 라면
m_btnTest.LoadBitmaps(IDB_TEST_U,NULL,NULL,NULL); 해주면 된다.
그리고 이미지에 버튼 크기를 맞추기 위해
m_btnTest.SizeToContent(); 를 해준다.
마지막으로 버튼의 OwnerDraw항목을 True로 해준다.
/////////////////// 끝
'MFC' 카테고리의 다른 글
[MFC] CString To TCHAR 변환하기 (0) | 2014.02.27 |
---|---|
[MFC] 문자열 _T("") 와 L"" (0) | 2014.02.27 |
[MFC] Excel Automation 프로젝트 세팅하기 (2) | 2014.02.27 |
[MFC] token 분리함수 ( AfxExtractSubString ) (0) | 2014.02.26 |
[MFC] MFC에서 Excel 사용(Automation Class 와 ExcelFormat Library ) (9) | 2014.02.26 |