分类:
2008-10-15 16:40:19
//主菜单初始化过程
_TextInfo textInfo; //定义主菜顶部文本信息结构
m_StartMenu.GetUserPaneTextInfo(textInfo);//获取文本信息的初始属性
textInfo.clrShadow = GetSysColor(COLOR_BTNSHADOW);//设文本信息的主要属性
textInfo.nOffsetX = 1;
textInfo.nOffsetY = 1;
textInfo.logFontUserText.lfItalic = TRUE;
m_StartMenu.SetUserPaneTextInfo(textInfo); //使设置有效
m_StartMenu.SetUserPaneText(_T("WindowXp Menu")); //设置主菜顶部标题
m_StartMenu.SetUserPaneIcon(IDI_ICON_QQ,CSize(48,48)); //设置主菜顶部显示图标
//设置主菜顶部显示图形
m_StartMenu.GetUserBitmap(0,".\\skin\\1.bmp");
m_StartMenu.GetUserBitmap(1,".\\skin\\2.bmp");
m_StartMenu.GetUserBitmap(2,".\\skin\\3.bmp");
//实现菜单菜项的添加(左边主程序项的添加)
m_StartMenu.AppendProgItem(_T("Internet/nInternet Explorer"), ID_PROGLIST_IE,0,
MENU_DEFAULT,IDI_ICON_IE,NULL,_T("联接国际互际联网页"));
m_StartMenu.AppendProgItem(….)
….
m_StartMenu.AppendProgItem(_T("所有程序"),IDR_MENU_TEST,0,
MENU_BOTTOM|MENU_POPUP,0,NULL,NULL,&m_wndSubMenu);
// m_wndSubMenu 为“所有程序”菜单项的下拉子菜单
//实现菜单项的添加(分组菜单右边的菜单子项的添加)
//和上面方法一样,只不过是用函数AppendProgItem()
m_StartMenu. AppendPlaceItem(_T("My Documents"),
ID_PLACELIST_MYDOCUMENT,0,MENU_DEFAULT,
IDI_ICON_MYDOCUMENT);
…..
m_StartMenu. AppendPlaceItem(….);
//设置菜单子项文本颜色, PLACELIST_TYPE 指Place List 子项颜色
//PROGLIST_TYPE指Prog List(左边列表)子项颜色
m_StartMenu.SetItemTextColor(PLACELIST_TYPE,RGB(0,255,0));
//设置子项有焦点时,其显示的亮条图形,不设置亮条为蓝色
m_StartMenu.SetItemFoucsBitmap(PLACELIST_TYPE,".\\skin\\OverFoucs.bmp")
//设置菜单底部属性
CImageList lst;
lst.Create(IDB_STARTPANE_BUTTONS,24,3,RGB(192,192,192));
HICON hIconTurnOff = lst.ExtractIcon(2);
m_StartMenu.AppendBottomItem(_T("Turn Off Computer"),