创建事件结构:
打开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,选择创建Invoke Node
,然后选择Get Plot At Position
方法。
显示坐标信息:
在前面板上添加一个字符串指示器(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