void QnSkinDialog::OnThemeNcRButtonUp(UINT nHitTest, CPoint point) { TRACE(_T("QnSkinDialog::OnThemeNcRButtonUp")); // 可在这里弹出系统菜单 if (HTCAPTION== nHitTest) { PopupSysMenu(point); } }
void CSkinWin::OnNcRButtonDown(UINT nHitTest, CPoint point) { if ( nHitTest == HTCAPTION ) { /* CWnd * pWnd = CWnd::FromHandle(m_hWnd); pWnd->ModifyStyle( 0, WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX ); Default(); pWnd->ModifyStyle( WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX, 0 ); */ PopupSysMenu(point); } }
BOOL CElcSkinFrameBase::NcRButtonDown(UINT nHitTest, CPoint point) { m_nActiveItem = -1; m_bMenuActivated = FALSE; m_nActiveButton = -1; m_nLBDownItem = ESNWT_NONE; RedrawCaption(); RedrawMenuBar(); PopupSysMenu(); return TRUE; }
BOOL CElcSkinFrameBase::NcLButtonDown(UINT nHitTest, CPoint point) { GetOppositePoint(point); m_nLBDownItem = ESNWT_NONE; if (HTMENU == nHitTest) { int nIndex = PtInMenuItem(point); if (nIndex != -1) { m_bMenuActivated = !m_bMenuActivated; m_nActiveItem = nIndex; if (m_bMenuActivated) { RedrawMenuBar(); //m_bSelfCancelMenu = TRUE; PopupMenu(nIndex); } else { m_bSelfCancelMenu = TRUE; ::SendMessage(m_hDerive, WM_CANCELMODE, 0, 0); RedrawMenuBar(); } } } else if (HTSYSMENU == nHitTest) { PopupSysMenu(); } else { int nItem = FindButton(nHitTest); if (nItem != -1) { m_nLBDownItem = nHitTest; RedrawButton(m_arrButton[nItem].pButton); return TRUE; } m_nActiveItem = -1; m_bMenuActivated = FALSE; m_nActiveButton = -1; m_nLBDownItem = ESNWT_NONE; RedrawMenuBar(); return FALSE; } return TRUE; }
void CSkinWin::OnNcLButtonDown(UINT nHitTest, CPoint point) { m_downHitTest = nHitTest; m_moveHitTest = m_downHitTest; //OnNcPaint(0); //如果是子窗体,则全部为客户区 if(m_pHookedWnd->IsKindOf( RUNTIME_CLASS( CTabDialog )) ||m_pHookedWnd->IsKindOf(RUNTIME_CLASS(CPopDlg))) { m_bDrag=FALSE; if(nHitTest == HTCAPTION) nHitTest = HTCLIENT; } else { if(nHitTest == HTCAPTION) m_bDrag=TRUE; } if ( nHitTest >= HTLEFT && nHitTest <= HTBOTTOMRIGHT || nHitTest == HTCAPTION ) //&& m_winstate != 1 !IsZoomed(m_hWnd) ) { Default(); OnNcPaint(0); } else if ( nHitTest == HTSYSMENU ) { PopupSysMenu(point); /* CWnd * pWnd = CWnd::FromHandle(m_hWnd); //a tricky hack pWnd->ModifyStyle( 0, WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX ); Default(); pWnd->ModifyStyle( WS_SYSMENU | WS_MINIMIZEBOX | WS_MAXIMIZEBOX, 0 ); */ } OnNcPaint(0); }