步骤
-
创建事件结构:
- 打开LabVIEW,创建一个新的VI。
- 在前面板上添加一个Waveform Graph控件。
- 在后面板上添加一个While Loop和一个事件结构(Event Structure)。
- 配置事件结构,选择Waveform Graph作为事件源,并选择
Mouse Move事件。
-
获取鼠标位置:
- 在事件结构中,右键点击Waveform Graph,选择创建
Invoke Node,然后选择Map Coordinates To XY方法。 - 通过事件数据节点(Event Data Node)获取鼠标位置的坐标。
- 在事件结构中,右键点击Waveform Graph,选择创建
-
获取曲线上的点:
- 再次右键点击Waveform Graph,选择创建
Invoke Node,然后选择Get Plot At Position方法。
- 再次右键点击Waveform Graph,选择创建
-
显示坐标信息:
- 在前面板上添加一个字符串指示器(String Indicator)。
- 为字符串指示器创建属性节点(Property Node),包括
Visible、Position和Value属性。 - 将事件数据节点中的坐标数据传递给
Map Coordinates To XY的输入端。使用拆包函数(Unbundle Function)提取X和Y坐标值。 - 将坐标值转换为字符串格式,使用
Number To Fractional String函数。 - 在鼠标悬停在曲线上的时候,显示字符串指示器。
具体步骤实现
-
前面板设计:
- 添加Waveform Graph控件和字符串指示器。
-
后面板设计:
- 在While Loop中添加事件结构。
- 配置事件结构,选择Waveform Graph作为事件源,选择
Mouse Move事件。 - 创建
Invoke Node,选择Map Coordinates To XY和Get Plot At Position方法。 - 创建字符串指示器的属性节点,包括
Visible、Position和Value属性。 - 将事件数据节点的坐标数据传递给
Map Coordinates To XY。 - 使用拆包函数提取X和Y坐标值,并将其转换为字符串格式。
- 在鼠标悬停在曲线上的时候,显示字符串指示器。
额外信息
- 可以将上述功能编译为XControl,即使VI停止执行,用户仍然可以获取坐标信息。
- 创建XControl时,将Waveform Graph和字符串指示器复制到
Façade.vi前面板,并在块图中创建新的Mouse Move事件。
通过上述步骤,你可以在LabVIEW中实现鼠标悬停在波形图上时显示相应点的坐标。这样,即使VI停止运行,用户也能继续获取坐标信息。
参见链接Display the Coordinates When the Mouse Hovers over the Curve of the Graph - NI