C++ — TeeChart 画矩形

BEGIN_EVENTSINK_MAP(CChoosePointDlg, CDialog)
	ON_EVENT(CChoosePointDlg, IDC_TCHART , 8, OnDblClickTchart, VTS_NONE)
	ON_EVENT(CChoosePointDlg, IDC_TCHART, 20, CChoosePointDlg::OnMouseMoveChoosePointTchart, VTS_I4 VTS_I4 VTS_I4)
	ON_EVENT(CChoosePointDlg, IDC_TCHART, 19, CChoosePointDlg::OnMouseDownChoosePointTchart, VTS_I4 VTS_I4 VTS_I4 VTS_I4)
	ON_EVENT(CChoosePointDlg, IDC_TCHART, 21, CChoosePointDlg::OnMouseUpChoosePointTchart, VTS_I4 VTS_I4 VTS_I4 VTS_I4)
END_EVENTSINK_MAP()

void CChoosePointDlg::OnMouseDownChoosePointTchart(long Button, long Shift, long X, long Y)
{
	m_Tchart.Repaint();
	m_isDraw = TRUE;
	if (Button == mbLeft){
		m_first_x = X;
		m_first_y = Y;
	}
}

void CChoosePointDlg::OnMouseMoveChoosePointTchart(long Shift, long X, long Y)
{ 
	int m_end_x = X;
	int m_end_y = Y;

	//设置画笔颜色
	m_Tchart.GetCanvas().GetPen().SetColor(RGB(128,0,255));
	//绘制垂线
	if (m_first_x != 0 && m_isDraw == TRUE)
	{
		m_Tchart.Repaint();
		m_Tchart.GetCanvas().DrawLine(m_first_x,m_first_y,m_end_x,m_first_y);
		m_Tchart.GetCanvas().DrawLine(m_end_x,m_first_y,m_end_x,m_end_y);
		m_Tchart.GetCanvas().DrawLine(m_end_x,m_end_y,m_first_x,m_end_y);
		m_Tchart.GetCanvas().DrawLine(m_first_x,m_end_y,m_first_x,m_first_y);
	}	
}

void CChoosePointDlg::OnMouseUpChoosePointTchart( long Button, long Shift, long X, long Y )
{
	m_isDraw = FALSE;
}

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值