在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
此链结最下方的下载,可以实现此功能。但是他是写到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
解决方案 »
- 属性页按钮问题
- CEdit控件中的内容越来越多时,出现了滚动条,再用SetSel选中最后区域,界面显示混乱。
- MFC
- 视频编解码技术(急求!!!高手)
- 如何在C文件中使用C++库导出的类??
- 哪位高手来指点一下,有关HttpSendRequest的Post问题。
- 我下载了IPmon,可是#include "mstcpip.h" #include "iphlpapi.h"这两个文件,在哪?
- CArchive CMemFile
- 字符处理的问题
- 我的程序在编译成Release版时提示access violation,不能运行,Debug版就行,为何???
- 请教如何用实现类似xp中的图片浏览?
- 怎样判断一个点在多边形的里面??
继续Up!!!