// 滚动事件处理 BOOL CDuiText::OnControlScroll(BOOL bVertical, UINT nFlags, CPoint point) { if(!m_pControScrollV->GetVisible()) { return false; } // 更新滚动条,并刷新界面 CDuiScrollVertical* pScroll = (CDuiScrollVertical*)m_pControScrollV; if(pScroll->ScrollRow((nFlags == SB_LINEDOWN) ? 1 : -1)) { UpdateControl(true); } return true; }
// 垂直滚动事件处理 BOOL CDuiGridCtrl::OnControlScroll(BOOL bVertical, UINT nFlags, CPoint point) { if(((int)m_vecRowInfo.size() * m_nRowHeight) <= m_rc.Height()) { return false; } // 更新滚动条,并刷新界面 CDuiScrollVertical* pScrollV = (CDuiScrollVertical*)m_pControScrollV; if(pScrollV->ScrollRow((nFlags == SB_LINEDOWN) ? 1 : -1)) { UpdateControl(true); } return true; }
// 滚动事件处理 BOOL CDuiPanel::OnControlScroll(BOOL bVertical, UINT nFlags, CPoint point) { if(m_pDuiPluginObject) { m_pDuiPluginObject->OnScroll(bVertical, nFlags, point); } if(!m_bEnableScroll || (m_nVirtualHeight < m_rc.Height())) { return false; } // 更新滚动条,并刷新界面 CDuiScrollVertical* pScrollV = (CDuiScrollVertical*)m_pControScrollV; if(pScrollV->ScrollRow((nFlags == SB_LINEDOWN) ? 1 : -1)) { UpdateControl(true); // 刷新滚动条 pScrollV->UpdateControl(true); } return true; }