사용한 라이브러리 출처:
http://www.codeproject.com/Articles/2869/Owner-drawn-menu-with-bitmaps-icons-and-colors
1.메뉴에 사용할 아이콘 이미지 준비
인터넷에서 32x32 아이콘 이미지를 다운로드 받아서 bmp로 변환 후, 소스 코드가 있는 폴더로 복사해두었다.
https://www.iconfinder.com/iconsets/yooicons_set09_halloween
Resource View창에서 마우스 오른쪽 버튼을 클릭하고 나오는 메뉴에서 "Add Resource"를 선택한다. 그리고 나서 위에 있는 파일 네 개를 선택해준다.
Resource View의 Bitmap항목에 4개의 비트맵 이미지에 접근할 수 있는 문자열이 추가된다.
2. menu_testDlg.h에 추가
codeproject에서 다운로드 받은 파일인 MenuCH.h와 MenuCH.cpp 파일을 프로젝트에 추가해준다. 그리고 프로젝트 파일이름이 menu_test인 경우에 menu_testDlg.h에 아래 헤더파일을 추가했다.
#include "MenuCH.h"
그리고 protected멤버로써 아래 변수들을 추가한다.
CMenuCH m_FileMenu, m_EditMenu, m_ViewMenu, m_HelpMenu;
3. menu_testDlg.cpp 에 추가
Menu_testDlg.cpp 파일에 아래 한줄을 추가한다.
#include "MenuCH.h"
그리고 Cmenu_testDlg::OnCreate(LPCREATESTRUCT lpCreateStruct) 함수에 아래 내용을 추가하면
다이얼로그 타이틀바 밑에 메뉴바가 생긴다.
Cmenu_testDlg::Cmenu_testDlg(CWnd* pParent /*=NULL*/) 함수에 아래 내용을 추가하면 메뉴바에 하위메뉴 들이 추가된다.
4. MenuCH.cpp 파일을 수정
void CMenuCH::DrawXPMenu(LPDRAWITEMSTRUCT lpDIS)에서 다음 세 군데를 수정한다.
메뉴스타일이 MIT_XP인 경우 32x32사이즈 이미지를 사용할 경우로 수정하였다. 다른 경우는 해당 함수를 같은 방식으로 고치면 될듯함.
5. 실행결과
'MFC' 카테고리의 다른 글
64비트 컴퓨터에 설치된 Visual Studio 2015로 32비트용 실행파일 컴파일하기 (5) | 2015.09.05 |
---|---|
OLE DB를 이용해 MSSQL DB사용하는 예제 소스 코드 (0) | 2015.09.03 |
64비트 컴퓨터에 설치된 Visual Studio 2013으로 32비트용 실행파일 컴파일하기 (0) | 2015.09.03 |
Visual Studio 2013용 멀티바이트 MFC 라이브러리 (0) | 2015.08.26 |
MFC 사용 가능한 시리얼 포트 읽어오기 (0) | 2015.02.15 |