ZedGraph的曲线的LineItem对象的Tag属性存储信息进而在鼠标悬浮时进行显示
场景
Winform中设置ZedGraph鼠标悬浮显示距离最近曲线上的点的坐标值和X轴与Y轴的标题:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/103140781
上面博客能实现鼠标悬浮显示最近的曲线上点的坐标值与X轴和Y轴的标题,
如果想要再显示其他信息,比如曲线所对应的文件名等。
那么就要在生成曲线时将自定义要保存的信息与曲线进行绑定存储。
注:
博客主页:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
ZedGraph的曲线对象是LineItem,其有一属性Tag可以用它来存储额外信息。
在生成曲线时
LineItem myCurve = myPane.AddCurve(yList[i].Title, list, System.Drawing.ColorTranslator.FromHtml(yList[i].Color), symbolType);
//使用曲线TAG存储数据库名 文件名
//文件完整路径
string filePath = compTestDataList[k].ThisDataFile;
//文件名
string fileName = System.IO.Path.GetFileNameWithoutExtension(filePath);
//数据库名
string dBName = System.IO.Directory.GetParent(filePath).ToString();
dBName = dBName.Substring(dBName.LastIndexOf('\\') + );
dBName = "DB_" + dBName;
//短文件名
string[] titles = fileName.Split('_');
string shortFileName = "柜" + titles[titles.Length - ] + "通道" + titles[titles.Length - ];
myCurve.Tag = dBName + shortFileName;
myCurve.YAxisIndex = i;
生成曲线时使用曲线对象的Tag属性存储了自定义的一些信息。
那么在鼠标的悬浮事件中
tag = nearstCurve.Tag.ToString();
完整示例代码
private static string zgc_CursorValueEvent(ZedGraphControl sender, GraphPane pane, Point mousePt)
{
ZedGraphControl zgc = sender as ZedGraphControl;
if (zgc != null)
{
CurveItem nearstCurve;
int i;
Double x = 0.0;
Double y = 0.0;
string xTitle = String.Empty;
string yTtile = String.Empty;
string tag = String.Empty;
string xVlaue = String.Empty;
string z = String.Empty;
try
{
zgc.GraphPane.FindNearestPoint(mousePt, out nearstCurve, out i);
if (nearstCurve != null && nearstCurve.Points.Count > i && nearstCurve.Points[i] != null)
{
z = nearstCurve.Points[i].Tag.ToString();
y = nearstCurve.Points[i].Y;
xTitle = zgc.GraphPane.XAxis.Title.Text;
//获取当前pane面板的YAxis的标题的文本内容,通过nearstCurve.YAxisIndex获取当前距离最近的曲线所对应的Y轴的Index
yTtile = zgc.GraphPane.YAxisList[nearstCurve.YAxisIndex].Title.Text;
tag = nearstCurve.Tag.ToString();
}
}
catch (Exception ex)
{ }
return tag+ " X-" + xTitle + ": " + z + " Y-" + yTtile + ": " + y.ToString();
}
else
{
return String.Empty;
}
}
效果

ZedGraph的曲线的LineItem对象的Tag属性存储信息进而在鼠标悬浮时进行显示的更多相关文章
- Winform中设置ZedGraph鼠标悬浮显示举例最近曲线上的点的坐标值和X轴与Y轴的标题
场景 Winform中设置ZedGraph鼠标双击获取距离最近曲线上的点的坐标值: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/ ...
- 使用 JavaScript 中的 document 对象查找 HTML 元素,实现“登录”按钮的高亮特效 鼠标悬浮于“登录”按钮时,按钮高亮显示;
查看本章节 查看作业目录 需求说明: 使用 JavaScript 中的 document 对象查找 HTML 元素,实现"登录"按钮的高亮特效 鼠标悬浮于"登录" ...
- WInform中实现设置ZedGraph中曲线的X轴与Y轴的上限与下限
场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- Winform中实现ZedGraph中曲线右键显示为中文
场景 Winforn中设置ZedGraph曲线图的属性.坐标轴属性.刻度属性: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- Winform中设置ZedGraph的曲线为散点图
场景 Winform中设置ZedGraph的曲线符号Symbol以及对应关系: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/10 ...
- Winform中设置ZedGraph的曲线为折线、点折线、散点图
场景 Winform中设置ZedGraph的曲线为散点图: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102465399 在上 ...
- 巧用TAG属性保存对象的指针
指针的数据类型是整型,一个指针就是一个整型的数值. 所以凡整型的变量(这个整型的变量可以是声明在INI文件中,也可以是声明在函数中的)也好,对象的整型的属性也好,都可以用来存储一个指针. 但对象往往没 ...
- zedgraph控件的一些比较有用的属性 转
(1)zedgraph控件属性具体解释: AxisChange()() ->> This performs an axis change command on the graphPane. ...
- zedgraph控件的一些比较有用的属性
(1)zedgraph控件属性具体解释: AxisChange()() ->> This performs an axis change command on the graphPane. ...
随机推荐
- python3 之 迭代器与生成器
迭代器 迭代是Python最强大的功能之一,是访问集合元素的一种方式. 迭代器是一个可以记住遍历的位置的对象. 迭代器对象从集合的第一个元素开始访问,知道所有的元素被访问完结束. 迭代器只能往前不会后 ...
- 2019-9-24:渗透测试,css样式,js基础学习笔记
css分组和嵌套:分组:比如有<h1><h4><p>,3个标签,设置css时候可以 h1,h4,p{样式:属性} 这样的语法嵌套:比如.lei{样式:属性},.le ...
- cenos7搭建gitlab
git.github和gitlab的区别 git:是一种版本控制系统,是一个命令,是一种工具 gitlib:是基于实现功能的开发库 github:是一个基于git实现的在线代码仓库软件 gitlib可 ...
- Eclipse中查看JAVA源代码显示SOURCE NOT FOUND解决办法
Problem:Java利用快捷键查看源代码显示Source not found 出现问题的原因:JDK目录下缺失src.zip文件只有javafx-src.zip src.zip文件:Java所有类 ...
- JavaScript实战实例剖析——(激励倒计时日历)
如今JavaScript在前端开发中的地位越来越高,掌握JavaScript的深度往往能决定你职业道路深远,这次通过制作 带着倒计时功能的激励日历的小实例,进一步细致的掌握JavaScript的语法与 ...
- c语言I博客专业06
问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/8655 我在 ...
- Linux运维的第一周总结
这个阶段主要学习 Linux 运维技术,包括 Linux 基本操作.Bash 编程.应用服务部署.数据库服务部署.日志管理.系统监控等. 第1周: Linux基础本周学习 Linux 基本操作.用户与 ...
- Flink入门(三)——环境与部署
flink是一款开源的大数据流式处理框架,他可以同时批处理和流处理,具有容错性.高吞吐.低延迟等优势,本文简述flink在windows和linux中安装步骤,和示例程序的运行,包括本地调试环境,集群 ...
- [NACOS HTTP-GET] The maximum number of tolerable server reconnection errors has been reached
错误的意思是:已达到可容忍的服务器重连接错误的最大数目.有两个解决思路:一个将这个值设置的更大:然后是排查自己连接服务哪儿出了问题.先说在哪儿设置这个值:在拉取nacos服务的注解配置中,添加一个属性 ...
- eclipse svn 问题记录
1. 标记为合并,则是 舍弃的是资源库中的文件:覆盖,则是 舍弃本地文件