Picture Control 에 리소스(비트맵) 연동하기
MFC&ActiveX 2007. 8. 29. 19:47 |가끔 mfc로 작업을 하다 보면 Dialog에 Bitmap를 배경에 깔고 싶을때가 있다.
그래서 배경에 까는건 아니지만 Picture Control을 사용해서 적용해보았다.
1. 리소스에 비트맵을 추가하고 아이디는 IDB_STATUSMGR_BACKGROUND로 지정
(실제 파일을 불러 오는것도 가능하지만 지금 내가 한것은 리소스를 통해서 한것이기에...)
2. Dialog에 Picture Control을 생성한다.
3. Alt + D를 사용해서 레이어를 하단으로 옮겨 주는것도 좋다.
4. Type를 Bitmap로 맞춰 준다.
(처음에 기본이 frame로 되어 있다.)
5. IDC_STATIC로 되어 있는 이름을 다른 것으로 바꾼다.
6. 코드를 추가한다.
BOOL CDlgStatusMgr::OnInitDialog()
{
...
CStatic* m_pPicture = (CStatic*)GetDlgItem(IDC_STATIC_BACKGROUND);
assert(m_pPicture && "포인터가 구해지지 않았네욤.");
//HBITMAP를 생성한다.
HBITMAP hBmp = (HBITMAP)::LoadImage(AfxGetInstanceHandle(),
MAKEINTRESOURCE(IDB_STATUSMGR_BACKGROUND),
IMAGE_BITMAP,
0,0,
LR_LOADMAP3DCOLORS);
//Picture Control에 이미지를 연결시킨다.
m_pPicture->SetBitmap(hBmp);
...
}
위와 같이 진행 하면. 픽쳐 컨트롤에 이미지를 부여 할 수 있다.