zoukankan      html  css  js  c++  java
  • chart控件获取鼠标点击坐标,十字坐标跟随——c#

    方法一:鼠标点击波形

    鼠标点击波形,显示点击位置的x,y值

    private void chart1_MouseClick(object sender, MouseEventArgs e)  //chart1是你建的chart控件,实际名字根据你自己代码里的命名
            {            
                HitTestResult hit = chart1.HitTest(e.X, e.Y);
                if (hit.Series != null)
                {
                    var xValue = hit.Series.Points[hit.PointIndex].XValue;
                    var yValue = hit.Series.Points[hit.PointIndex].YValues.First();
                    textBox1.Text = string.Format("{0:F0},{1:F0}", "x:"+xValue, "y:"+yValue);//textbox1也是自己建的一个专门用来显示的内容框,也可以用messagebox直接弹出内容
                }
                else
                {
                    textBox1.Text="未点击到波形曲线";
                }
            }

    调用方法:

    chart1.MouseClick += new MouseEventHandler(chart1_MouseClick);

    方法二:鼠标移动到相应点位自动显示相关数值

    private void chart1_MouseMove(object sender, MouseEventArgs e)
            {
                var area = chart1.ChartAreas[0];

                double xValue = area.AxisX.PixelPositionToValue(e.X);
                double yValue = area.AxisY.PixelPositionToValue(e.Y);
                textBox1.Text = string.Format("{0:F0},{1:F0}", xValue, yValue);
            }

    调用方法:

    chart1.MouseMove += new MouseEventHandler(chart1_MouseMove);

    绘制十字坐标:


    //清空十字架
    chartVoltage.Series[1].Points.Clear();
    chartVoltage.Series[2].Points.Clear();
    //获取当前鼠标坐标
    double cursorX = chartVoltage.ChartAreas[0].AxisX.PixelPositionToValue(e.X);
    double cursorY = chartVoltage.ChartAreas[0].AxisY.PixelPositionToValue(e.Y);
    //绘制竖线下半部分
    chartVoltage.Series[1].Points.AddXY(cursorX, chartVoltage.ChartAreas[0].AxisY.Minimum);
    //绘制竖线上半部分
    chartVoltage.Series[1].Points.AddXY(cursorX, chartVoltage.ChartAreas[0].AxisY.Maximum);
    //绘制横线左半部分
    chartVoltage.Series[2].Points.AddXY(chartVoltage.ChartAreas[0].AxisX.Minimum, cursorY);
    //绘制横线右半部分
    chartVoltage.Series[2].Points.AddXY(chartVoltage.ChartAreas[0].AxisX.Maximum, cursorY);

  • 相关阅读:
    P1093 奖学金
    『模板』快速排序
    [模板]选择排序&&冒泡排序&&插入排序
    CF898A Rounding
    计算细胞数【BFS】
    字符串匹配问题(lfyzoj)
    [HDU]4694 Important Sisters(支配树)
    [BZOJ]4650: [Noi2016]优秀的拆分
    [BZOJ]4908: [BeiJing2017]开车
    [洛谷]P3729 曼哈顿计划EX(最小割树/等价流树)
  • 原文地址:https://www.cnblogs.com/eve612/p/14264259.html
Copyright © 2011-2022 走看看