카테고리 없음

CMFCFontComboBox Debug mode Crash(아이콘이 안나옴)

뿌셩 2024. 6. 16. 17:18

오래된 프로젝트에 CMFCFontComboBox를 사용하려는 경우 Debug 모드에서

CMFCFontComboBox::DrawItem의

m_Images.Draw(pDC, (pDesc->m_nType & DEVICE_FONTTYPE) ? 0 : 1, ptImage, ILD_NORMAL); 에서 에러가 발생.

또는 Release 모드에서 폰트 콤보박스에 폰트의 종류를 구분하는 아이콘을 출력하지 못하는 문제가 발생함.

 

원인은 m_Images(CImageList)가 이미지 Resource를 가져오지 못해서 발생하는 문제임.

즉 m_Images.Create(IDB_AFXBARRES_FONT, nImageWidth, 0, RGB(255, 255, 255)); 의 리턴값이 0(실패)임.

 

해결방법은

Resource View -> xxxx.rc(ProjectName.rc) 마우스 우클릭 -> Resource includes 선택 -> #include "afxribbon.rc" 추가