在ToolBar上实现下拉菜单。如同IE的Back按钮。此功能用ToolBarEx包装~:P  
此链结最下方的下载,可以实现此功能。但是他是写到MainFrame中实现的。如下:void CMainFrame::OnToolbarDropDown(NMTOOLBAR* pnmtb, LRESULT *plr)
{
    CWnd *pWnd;
    UINT nID;    // Switch on button command id's.
    switch (pnmtb->iItem)
    {
    case ID_FILE_OPEN:
        pWnd = &m_wndToolBar;
        nID  = IDR_MENU1;
        break;
    default:
        return;
    }
    
    // load and display popup menu
    CMenu menu;
    menu.LoadMenu(nID);
    CMenu* pPopup = menu.GetSubMenu(0);
    ASSERT(pPopup);
    
    CRect rc;
    pWnd->SendMessage(TB_GETRECT, pnmtb->iItem, (LPARAM)&rc);
    pWnd->ClientToScreen(&rc);
    
    pPopup->TrackPopupMenu( TPM_LEFTALIGN | TPM_LEFTBUTTON | TPM_VERTICAL,
        rc.left, rc.bottom, this, &rc);
}
可是我希望用ToolBarEx的类包装此功能,可以做到吗?链接:http://www.vckbase.com/code/listcode.asp?mclsid=3&sclsid=305

解决方案 »

  1.   

    注意!!!这个问题我自己已经搞定!!!现在是另一个问题。分会给第一个给出解答的,不够再加。不在乎分的也请解答:P问题是::::ToolBar现在需要绘制背景色,如红色。此时MunuBar下的一长条只有左边属于ToolBar的部分背景色是红色那ToolBar的右边是MainFrame的哪一部分?如何绘制背景色??谢谢!!!
      

  2.   

    ToolBar现在需要绘制背景色,如红色。此时MunuBar下的一长条只有左边属于ToolBar的部分背景色是红色那ToolBar的右边是MainFrame的哪一部分?如何绘制背景色??谢谢!!!
    继续Up!!!