屏蔽、修改ToolBar的右键菜单

缺省的CToolBar的在浮动的状态下,右键菜单(contex)显示。

 

在英文版的软件按装在中文哦系统下,显示的是中文菜单。或者想去掉该右键菜单。方法如下

 

重载 ONLBUTTONCLICK and  ONLBUTONDBCLICK

 

 

void CWapTooBar::OnLButtonDblClk(UINT nFlags, CPoint point) 

{

//父类操作

CToolBar::OnLButtonDblClk(nFlags, point);

 

if (IsFloating()) //is toolbar floating

{

CWnd* pMiniFrame;

CWnd* pDockBar;

pDockBar = GetParent();

pMiniFrame = pDockBar->GetParent();

CMenu* pMenu = pMiniFrame->GetSystemMenu(FALSE);

 

WORD langID = MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US);

if(langID == GetThreadLocale())

{//英文版

pMenu->ModifyMenu(SC_MOVE, MF_BYCOMMAND|MF_STRING,MF_BYCOMMAND|SC_MOVE, "Move(&M)");

pMenu->ModifyMenu(SC_CLOSE, MF_BYCOMMAND|MF_STRING,MF_BYCOMMAND|SC_CLOSE, "Hide(&H)");

}

//extreme way of re-painting the toolbar

pMiniFrame->ShowWindow(SW_HIDE);

pMiniFrame->ShowWindow(SW_SHOW);

}

}

 

void CWapTooBar::OnLButtonDown(UINT nFlags, CPoint point) 

{

CToolBar::OnLButtonDown(nFlags, point);

 

if (IsFloating()) //is toolbar floating

{

CWnd* pMiniFrame;

CWnd* pDockBar;

pDockBar = GetParent();

pMiniFrame = pDockBar->GetParent();

CMenu* pMenu = pMiniFrame->GetSystemMenu(FALSE);

WORD langID = MAKELANGID(LANG_ENGLISH, SUBLANG_ENGLISH_US);

if(langID == GetThreadLocale())

{//英文版

pMenu->ModifyMenu(SC_MOVE, MF_BYCOMMAND|MF_STRING,MF_BYCOMMAND|SC_MOVE, "Move(&M)");

pMenu->ModifyMenu(SC_CLOSE, MF_BYCOMMAND|MF_STRING,MF_BYCOMMAND|SC_CLOSE, "Hide(&H)");

}

pMiniFrame->ShowWindow(SW_HIDE);

pMiniFrame->ShowWindow(SW_SHOW);

}

}

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值