void CConsoleEdit::OnRButtonDown(UINT nFlags, CPoint point) { //加载右键菜单 CMenu menu,*pmenu; RECT rect; GetWindowRect(&rect); VERIFY(menu.LoadMenu(IDR_MENU1)); pmenu = menu.GetSubMenu(0); int nStart,nEnd; GetSel(nStart,nEnd); if(nStart == nEnd) pmenu->EnableMenuItem(IDR_MENUCOPY,MF_GRAYED | MF_DISABLED); if(!m_bcopy || nStart != nEnd) pmenu->EnableMenuItem(IDR_MENUPLASTER,MF_GRAYED | MF_DISABLED); int nMenuResult = pmenu->TrackPopupMenu(TPM_RETURNCMD | TPM_LEFTALIGN |TPM_RIGHTBUTTON, point.x+rect.left, point.y+rect.top, this); switch (nMenuResult) { case IDR_MENUCOPY: //复制 OnMenuCopy(); break; case IDR_MENUPLASTER: //粘贴 OnMenuPlaster(); break; default: break; } }
bool MsgBubbleItem::OnMenu( ui::EventArgs* arg ) { std::wstring name = arg->pSender->GetName(); if(name == L"copy") OnMenuCopy(); else if(name == L"delete") OnMenuDelete(); else if (name == L"transform") OnMenuTransform(); return false; }
bool MsgBubbleItem::OnMenu( ui::EventArgs* arg ) { std::wstring name = arg->pSender->GetName(); if(name == L"copy") OnMenuCopy(); else if(name == L"delete") OnMenuDelete(); else if (name == L"transform") OnMenuTransform(); else if (name == L"retweet") m_pWindow->SendNotify(this, ui::kEventNotify, BET_RETWEET, 0); else if (name == L"recall") m_pWindow->SendNotify(this, ui::kEventNotify, BET_RECALL, 0); return false; }