场景

Winforn中设置ZedGraph曲线图的属性、坐标轴属性、刻度属性:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/100112573

在鼠标经过曲线附近时获取最近曲线以及曲线上点的坐标,并以此坐标表示一条十字线。

效果

注:

博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

绑定鼠标移动事件

zgc.MouseMove += zgc_MouseMove;

其中zgc是 ZedGraphControl zgc

private static void zgc_MouseMove(object sender, MouseEventArgs e)
{
using (Graphics gc = Global.zedGraphControl1.CreateGraphics())
using (Pen pen = new Pen(Color.Green))
{
//设置画笔的宽度
pen.Width = ;
pen.DashStyle = System.Drawing.Drawing2D.DashStyle.DashDot;
RectangleF rect = Global.zedGraphControl1.GraphPane.Chart.Rect;
//确保在画图区域
if (rect.Contains(e.Location))
{
Global.zedGraphControl1.Refresh();
//画竖线
gc.DrawLine(pen, e.X, rect.Top, e.X, rect.Bottom);
//画横线
gc.DrawLine(pen, rect.Left, e.Y, rect.Right, e.Y); }
}
}

注:

Global.zedGraphControl1是全局域的zedGraphControl对象。

这样后会随着鼠标的移动产生十字线,但是在离开pane时怎样将画好的十字线删除掉。

绑定其鼠标移除事件

zgc.MouseLeave += zgc_MouseLeave;

实现方法

private static void zgc_MouseLeave(object sender, EventArgs e)
{
using (Graphics gc = Global.zedGraphControl1.CreateGraphics())
using (Pen pen = new Pen(Color.Green))
{
//设置画笔的宽度
pen.Width = ;
pen.DashStyle = System.Drawing.Drawing2D.DashStyle.DashDot;
RectangleF rect = Global.zedGraphControl1.GraphPane.Chart.Rect;
//确保在画图区域
Global.zedGraphControl1.Refresh();
//画竖线
gc.DrawLine(pen, , , , );
//画横线
gc.DrawLine(pen, , , , );
}
}

这里采取的方法是采用将线画到原点的方式使其消失。

Winform中设置ZedGraph鼠标焦点位置画出十字线并在鼠标移出时十字线消失的更多相关文章

  1. Winform中设置ZedGraph鼠标悬浮显示举例最近曲线上的点的坐标值和X轴与Y轴的标题

    场景 Winform中设置ZedGraph鼠标双击获取距离最近曲线上的点的坐标值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...

  2. Winform中设置ZedGraph的曲线为散点图

    场景 Winform中设置ZedGraph的曲线符号Symbol以及对应关系: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  3. Winform中设置ZedGraph的曲线为折线、点折线、散点图

    场景 Winform中设置ZedGraph的曲线为散点图: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102465399 在上 ...

  4. Winform中设置ZedGraph鼠标滚轮缩放的灵敏度以及设置滚轮缩放的方式(鼠标焦点为中心还是图形中心点)

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  5. Winform中设置ZedGraph鼠标双击获取距离最近曲线上的点的坐标值

    场景 WInforn中设置ZedGraph的焦点显示坐标格式化以及显示三个坐标数的解决办法: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/det ...

  6. Winform中设置ZedGraph当前所有曲线的颜色

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

  7. Winform中设置ZedGraph多条Y轴时与多条曲线一一对应

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  8. Winform中设置ZedGraph多条Y轴时坐标轴左右显示设置

    场景 Winform中实现ZedGraph的多条Y轴(附源码下载): https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/1001322 ...

  9. Winform中设置ZedGraph的曲线符号Symbol以及对应关系

    场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...

随机推荐

  1. GitHub 2019年年度报告:Python最受欢迎,VScode贡献者高达19.1K

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 开源最前线(ID:OpenSourceTop) PS:如有需要Pyt ...

  2. Docker配置yapi接口

    一.安装Docker 第一步:yum 包更新到最新 sudo yum update 第二步:安装需要的软件包 yum-util 提供yum-config-manager功能,另外两个是devicema ...

  3. Linux下载——下载文件的命令

    Linux下载——获取网络文件的命令 摘抄:本文主要学习了在Linux系统中如何下载文件的命令. wget命令 wget命令是一个用来下载文件的命令,可以在后台运行,在用户退出之后仍能继续下载,支持代 ...

  4. LinuxShell脚本——变量和数据类型

    LinuxShell脚本——变量和数据类型 摘要:本文主要学习了Shell脚本中的变量和数据类型. 变量 定义变量的语法 定义变量时,变量名和变量值之间使用“=”分隔,并且等号两边不能有空格: 变量名 ...

  5. jQuery之概念以及基本使用

    1. jQuery的概述 1.1 jQuery的概念 jQuery是一个快速.简洁的JavaScript库,其设计的宗旨是“Write Less,Do More” jQuery主要是封装了JavaSc ...

  6. Jquery选择器个人总结

    1.选择第一级子节点 通过> 或者children方法实现 $('#XtraTabPage8>.datagrid-ftable') $('#XtraTabPage8').children( ...

  7. Android8.1源码编译实践(Mac)

    第0步:版本选择 AOSP版本选择很重要,如果选错了,会造成编译失败等各种问题,编译AOSP对Xcode的版本是有要求的: 比如:AOSP6.0-7.0,要求Xcode的版本是8.3,然而在MacOS ...

  8. jQuery-File-Upload $(...).fileupload is not a function $.widget is not a function

    使用 jQuery-File-Upload 库的时候碰到了 $(...).fileupload is not a function  和 $.widget is not a function  问题. ...

  9. 【JavaWeb】Ajax基础

    Ajax介绍 Asynchronous JavaScript And XML(异步的JavaScript和XML): Ajax可以在不刷新页面的前提下,进行页面局部更新: Ajax不是新的技术,Aja ...

  10. Java学习笔记(3)--- 内部类,基本数据类型

    1.内部类(nested classes): a.定义: 内部类其实就是一个类中还包含着另外一个类,如同一个人(外部类)是由大脑.肢体.器官等身体结果组成,而内部类相当于其中的某个器官之一,例如心脏: ...