measure.cpp

来自「在vc环境下」· C++ 代码 · 共 71 行

CPP
71
字号
#include "StdAfx.h"
#include ".\measure.h"



STDMETHODIMP CMeasure::OnMouseDown(LONG Button, LONG Shift, LONG X, LONG Y)
{
	if (MouseDown(X,Y))
	{
		GetFocusMapActiveView(&m_cpActiveView);
		ToFocusMapPoint(X,Y, &m_cpStartPoint);
	}

	return S_OK;
}

STDMETHODIMP CMeasure::OnMouseMove(LONG Button, LONG Shift, LONG X, LONG Y)
{

	if (CMapToolBase::IsMouseDown() && (m_cpStartPoint!=0))
	{
		
	}

	return S_OK;

}

STDMETHODIMP CMeasure::OnMouseUp(LONG Button, LONG Shift, LONG X, LONG Y)
{
	
	return S_OK;

}


STDMETHODIMP CMeasure::OnKeyDown(LONG keyCode, LONG Shift)
{
	if (keyCode == VK_ESCAPE)
		Reset();

	return S_OK;
}


STDMETHODIMP CMeasure::Refresh(OLE_HANDLE hDC)
{
	
	return S_OK;
}




void CMeasure::Reset()
{
	// clear out temp variables release mouse capture in base class
	m_cpActiveView = 0;
	m_cpStartPoint = 0;
	if (m_cpEnvelopeFeedback)
	{
		IEnvelopePtr cpEnvelope;
		m_cpEnvelopeFeedback->Stop(&cpEnvelope);
	}
	m_cpEnvelopeFeedback = 0;

	CMapToolBase::MouseUp();
}


⌨️ 快捷键说明

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