검색어 'Skin'에 대한 1 개의 검색 결과

  1. 2009/12/18 MFC 다이얼로그 스킨 by dhappy (2)

1. 다이얼로그 헤더에 비트맵 변수 추가

CBitmap m_bmpDlg;

2. 클래스 위자드로  함수 추가
void CngssDlg::LoadSkin()
{
      //추가한 비트맵 리소스를 비트맵 변수에 연결
      m_bmpDlg.LoadBitmap( IDB_BITMAP_BACKGROUND );
      BITMAP bmp;
      m_bmpDlg.GetBitmap( &bmp );

      //비트맵 크기대로 Dialog사이즈 변경 및 다이얼로그 위치를 중앙으로
      SetWindowPos( NULL, 0, 0, bmp.bmWidth, bmp.bmHeight, SWP_NOZORDER );
      CenterWindow();
}

3. 클래스에서 메시지 함수 OnEraseBkgnd추가

CRect rc;
GetClientRect(&rc);

CDC MemDC;
MemDC.CreateCompatibleDC(pDC);

CBitmap* pbmpOld = MemDC.SelectObject( &m_bmpDlg );
pDC->BitBlt(0, 0, rc.right, rc.bottom, &MemDC, 0, 0, SRCCOPY);

MemDC.SelectObject( pbmpOld );
ReleaseDC(pDC);
return TRUE;

4. OnInitDialog함수에서 LoadSkin()함수 호출

LoadSkin();

5. 테스트

2009/12/18 16:23 2009/12/18 16:23
dhappy 이 작성.
TAGS , ,