⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sliderctrl.cpp

📁 3D reconstruction, medical image processing from colons, using intel image processing for based clas
💻 CPP
📖 第 1 页 / 共 3 页
字号:
	}	else	{		if(m_dwExStyle & RXSC_CD_SHOW)			nTemp = rcClient.top + RXSC_MARGIN + RXSC_TOOLTIP_MARGIN;		else			nTemp = rcClient.top + RXSC_MARGIN;		rcGrip.SetRect(nPixel, nTemp, nPixel+RXSC_GRIP_WIDTH, nTemp+RXSC_GRIP_HEIGHT);	}	return rcGrip;}//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////void RxSliderCtrl::RecalcLayout(){	CRect	rcClient;	GetClientRect(rcClient);	// left,right margin	m_nPixelMin		= RXSC_MARGIN;	m_nPixelMax		= (rcClient.right-rcClient.left) - RXSC_MARGIN;	if(m_dwExStyle & RXSC_GC_SINGLE)	{		m_nPixelLeft	= m_nPixelMin;		m_nPixelCenter	= 0;		m_nPixelRight	= 0;	}	else if(m_dwExStyle & RXSC_GC_MULTI)	{		m_nPixelLeft	= m_nPixelMin;		m_nPixelCenter	= 0;		m_nPixelRight	= m_nPixelLeft + RXSC_GRIP_WIDTH;	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		m_nPixelLeft	= m_nPixelMin;		m_nPixelCenter	= m_nPixelLeft + RXSC_GRIP_WIDTH;		m_nPixelRight	= m_nPixelCenter + RXSC_GRIP_WIDTH;	}	RedrawWindow();}BOOL RxSliderCtrl::Increase(){	int		nOldPos;	if(m_dwExStyle & RXSC_GC_SINGLE)	{		if(m_nSelGripOld == RXSC_MOUSE_GRIP_LEFT)		{			nOldPos = m_nPosLeft;			m_nPosLeft++;			if(m_nPosLeft > m_nPosMax)		m_nPosLeft = m_nPosMax;			if(nOldPos == m_nPosLeft)		return FALSE;			RedrawWindow();			return TRUE;		}	}	else if(m_dwExStyle & RXSC_GC_MULTI)	{		if(m_nSelGripOld == RXSC_MOUSE_GRIP_LEFT)		{			nOldPos = m_nPosLeft;			m_nPosLeft++;			if(m_nPosLeft > m_nPosRight)			{				m_nPosRight = m_nPosLeft;				if(m_nPosRight > m_nPosMax)		m_nPosLeft = m_nPosRight = m_nPosMax;			}			if(nOldPos == m_nPosLeft)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_RIGHT)		{			nOldPos = m_nPosRight;			m_nPosRight++;			if(m_nPosRight > m_nPosMax)		m_nPosRight = m_nPosMax;			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_REGION)		{			nOldPos = m_nPosRight;			m_nPosLeft++;			m_nPosRight++;			if(m_nPosRight > m_nPosMax)			{				m_nPosLeft--;				m_nPosRight--;			}			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(m_nSelGripOld == RXSC_MOUSE_GRIP_LEFT)		{			nOldPos = m_nPosLeft;			m_nPosLeft++;			if(m_nPosLeft > m_nPosCenter)			{				m_nPosCenter = m_nPosLeft;				if(m_nPosCenter > m_nPosRight)				{					m_nPosRight = m_nPosCenter;					if(m_nPosRight > m_nPosMax)						m_nPosLeft = m_nPosCenter = m_nPosRight = m_nPosMax;				}			}			if(nOldPos == m_nPosLeft)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_CENTER)		{			nOldPos = m_nPosCenter;			m_nPosCenter++;			if(m_nPosCenter > m_nPosRight)				m_nPosCenter = m_nPosRight;			if(nOldPos == m_nPosCenter)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_RIGHT)		{			nOldPos = m_nPosRight;			if(m_nPosCenter == m_nPosRight)				m_nPosCenter++;			m_nPosRight++;			if(m_nPosRight > m_nPosMax)		m_nPosRight = m_nPosMax;			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_REGION)		{			nOldPos = m_nPosRight;			m_nPosLeft++;			m_nPosCenter++;			m_nPosRight++;			if(m_nPosRight > m_nPosMax)			{				m_nPosLeft--;				m_nPosCenter--;				m_nPosRight--;			}			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}	}	return FALSE;}BOOL RxSliderCtrl::Decrease(){	int		nOldPos;	if(m_dwExStyle & RXSC_GC_SINGLE)	{		if(m_nSelGripOld == RXSC_MOUSE_GRIP_LEFT)		{			nOldPos = m_nPosLeft;			m_nPosLeft--;			if(m_nPosLeft < m_nPosMin)		m_nPosLeft = m_nPosMin;			if(nOldPos == m_nPosLeft)		return FALSE;						RedrawWindow();			return TRUE;		}	}	else if(m_dwExStyle & RXSC_GC_MULTI)	{		if(m_nSelGripOld == RXSC_MOUSE_GRIP_LEFT)		{			nOldPos = m_nPosLeft;			m_nPosLeft--;			if(m_nPosLeft < m_nPosMin)		m_nPosLeft = m_nPosMin;			if(nOldPos == m_nPosLeft)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_RIGHT)		{			nOldPos = m_nPosRight;			m_nPosRight--;			if(m_nPosRight < m_nPosLeft)			{				m_nPosLeft = m_nPosRight;				if(m_nPosLeft  < m_nPosMin)		m_nPosLeft = m_nPosRight = m_nPosMin;			}			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_REGION)		{			nOldPos = m_nPosLeft;			m_nPosLeft--;			m_nPosRight--;			if(m_nPosLeft < m_nPosMin)			{				m_nPosLeft++;				m_nPosRight++;			}			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(m_nSelGripOld == RXSC_MOUSE_GRIP_LEFT)		{			nOldPos = m_nPosLeft;			if(m_nPosLeft == m_nPosCenter)				m_nPosCenter--;			m_nPosLeft--;			if(m_nPosLeft < m_nPosMin)		m_nPosLeft = m_nPosMin;			if(nOldPos == m_nPosLeft)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_CENTER)		{			nOldPos = m_nPosCenter;			m_nPosCenter--;			if(m_nPosCenter < m_nPosLeft)				m_nPosCenter = m_nPosLeft;			if(nOldPos == m_nPosCenter)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_RIGHT)		{			nOldPos = m_nPosRight;			m_nPosRight--;			if(m_nPosRight < m_nPosCenter)			{				m_nPosCenter = m_nPosRight;				if(m_nPosCenter < m_nPosLeft)				{					m_nPosLeft = m_nPosCenter;					if(m_nPosLeft < m_nPosMin)						m_nPosLeft = m_nPosCenter = m_nPosRight = m_nPosMin;				}			}			if(nOldPos == m_nPosRight)		return FALSE;			RedrawWindow();			return TRUE;		}		else if(m_nSelGripOld == RXSC_MOUSE_GRIP_REGION)		{			nOldPos = m_nPosLeft;			m_nPosLeft--;			m_nPosCenter--;			m_nPosRight--;			if(m_nPosLeft < m_nPosMin)			{				m_nPosLeft++;				m_nPosCenter++;				m_nPosRight++;			}			if(nOldPos == m_nPosLeft)		return FALSE;			RedrawWindow();			return TRUE;		}	}	return FALSE;}void RxSliderCtrl::SetSelGripOld(UINT nIndex){	m_nSelText = m_nSelGripOld = nIndex;	RedrawWindow();}void RxSliderCtrl::SetRange(int nMin, int nMax, BOOL bRedraw){//	ASSERT(nMin <= nMax);	m_nPosMin = nMin;	m_nPosMax = nMax;	if(m_dwExStyle & RXSC_GC_SINGLE)	{		if(m_nPosLeft < m_nPosMin)		m_nPosLeft = m_nPosMin;		if(m_nPosLeft > m_nPosMax)		m_nPosLeft = m_nPosMax;	}	else if(m_dwExStyle & RXSC_GC_MULTI)	{		if(m_nPosLeft  < m_nPosMin)		m_nPosLeft  = m_nPosMin;		if(m_nPosRight < m_nPosMin)		m_nPosRight = m_nPosMin;		if(m_nPosLeft  > m_nPosMax)		m_nPosLeft  = m_nPosMax;		if(m_nPosRight > m_nPosMax)		m_nPosRight = m_nPosMax;	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(m_nPosLeft   < m_nPosMin)	m_nPosLeft   = m_nPosMin;		if(m_nPosRight  < m_nPosMin)	m_nPosRight  = m_nPosMin;		if(m_nPosCenter < m_nPosLeft)	m_nPosCenter = m_nPosLeft;			if(m_nPosLeft   > m_nPosMax)	m_nPosLeft   = m_nPosMax;		if(m_nPosRight  > m_nPosMax)	m_nPosRight  = m_nPosMax;		if(m_nPosCenter > m_nPosRight)	m_nPosCenter = m_nPosRight;	}	if(bRedraw)			RedrawWindow();}void RxSliderCtrl::SetLeftPos(int nPosLeft, BOOL bRedraw){	if(m_dwExStyle & RXSC_GC_SINGLE)	{		if(nPosLeft < m_nPosMin)		nPosLeft = m_nPosMin;		if(nPosLeft > m_nPosMax)		nPosLeft = m_nPosMax;		m_nPosLeft = nPosLeft;	}	else if(m_dwExStyle & RXSC_GC_MULTI)	{		if(nPosLeft < m_nPosMin)		nPosLeft = m_nPosMin;		if(nPosLeft > m_nPosRight)		{			m_nPosRight = nPosLeft;			if(m_nPosRight > m_nPosMax)				nPosLeft = m_nPosRight = m_nPosMax;		}		m_nPosLeft = nPosLeft;	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(nPosLeft < m_nPosMin)		nPosLeft = m_nPosMin;		if(nPosLeft > m_nPosCenter)		{			m_nPosCenter = nPosLeft;			if(m_nPosCenter > m_nPosRight)			{				m_nPosRight = m_nPosCenter;				if(m_nPosRight > m_nPosMax)					nPosLeft = m_nPosCenter = m_nPosRight = m_nPosMax;			}		}		m_nPosLeft = nPosLeft;	}	else		return;	if(bRedraw)			RedrawWindow();}void RxSliderCtrl::SetRightPos(int nPosRight, BOOL bRedraw){	if(m_dwExStyle & RXSC_GC_MULTI)	{		if(nPosRight > m_nPosMax)		nPosRight = m_nPosMax;		if(nPosRight < m_nPosLeft)		{			m_nPosLeft = nPosRight;			if(m_nPosLeft < m_nPosMin)				nPosRight = m_nPosLeft = m_nPosMin;		}		m_nPosRight = nPosRight;	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(nPosRight > m_nPosMax)		nPosRight = m_nPosMax;		if(nPosRight < m_nPosCenter)		{			m_nPosCenter = nPosRight;			if(m_nPosCenter < m_nPosLeft)			{				m_nPosLeft = m_nPosCenter;				if(m_nPosLeft < m_nPosMin)					nPosRight = m_nPosLeft = m_nPosCenter = m_nPosMin;			}		}		m_nPosRight = nPosRight;	}	else		return;	if(bRedraw)			RedrawWindow();}void RxSliderCtrl::SetCenterPos(int nPosCenter, BOOL bRedraw){	if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(nPosCenter < m_nPosLeft)			nPosCenter  = m_nPosLeft;		if(nPosCenter > m_nPosRight)			nPosCenter  = m_nPosRight;		m_nPosCenter = nPosCenter;	}	else		return;	if(bRedraw)			RedrawWindow();}void RxSliderCtrl::SetPos(int nPosLeft, int nPosRight, BOOL bRedraw){//	ASSERT(nPosLeft <= nPosRight);	if(m_dwExStyle & RXSC_GC_MULTI)	{		if(nPosLeft < m_nPosMin)		nPosLeft = m_nPosMin;		if(nPosLeft > m_nPosMax)		nPosLeft = m_nPosMax;		m_nPosLeft  = nPosLeft;		if(nPosRight < nPosLeft)		nPosRight = nPosLeft;		if(nPosRight > m_nPosMax)		nPosRight = m_nPosMax;		m_nPosRight = nPosRight;	}	else if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		if(nPosLeft < m_nPosMin)		nPosLeft = m_nPosMin;		if(nPosLeft > m_nPosCenter)		m_nPosCenter = nPosLeft;		m_nPosLeft = nPosLeft;		if(nPosRight > m_nPosMax)		nPosRight = m_nPosMax;		if(nPosRight < m_nPosCenter)	m_nPosCenter = nPosRight;		m_nPosRight = nPosRight;	}	else		return;	if(bRedraw)			RedrawWindow();}void RxSliderCtrl::SetPos(int nPosLeft, int nPosRight, int nPosCenter, BOOL bRedraw){//	ASSERT(nPosLeft <= nPosCenter && nPosCenter <= nPosRight);	if(m_dwExStyle & RXSC_GC_MULTI_EX)	{		SetLeftPos(nPosLeft, FALSE);		SetRightPos(nPosRight, FALSE);		SetCenterPos(nPosCenter, bRedraw);	}	else		return;}UINT RxSliderCtrl::GetSelGripOld(){	return m_nSelGripOld;}int  RxSliderCtrl::GetLeftPos(){	return m_nPosLeft;}int  RxSliderCtrl::GetCenterPos(){	return m_nPosCenter;}int  RxSliderCtrl::GetRightPos(){	return m_nPosRight;}int  RxSliderCtrl::GetRangeMin(){	return m_nPosMin;}int  RxSliderCtrl::GetRangeMax(){	return m_nPosMax;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -