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;
}
C++ — TeeChart 画矩形
最新推荐文章于 2022-02-14 14:40:45 发布