반응형


 

사용한 라이브러리 출처:

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. 실행결과

 




반응형

포스트 작성시에는 문제 없었지만 이후 문제가 생길 수 있습니다.
댓글로 알려주시면 빠른 시일내에 답변을 드리겠습니다.

여러분의 응원으로 좋은 컨텐츠가 만들어집니다.
지금 본 내용이 도움이 되었다면 유튜브 구독 부탁드립니다. 감사합니다 : )

유튜브 구독하기


제가 쓴 책도 한번 검토해보세요.

+ Recent posts