在LabWindows/CVI检测鼠标的位置



主要软件: LabWindows/CVI Development Systems>>LabWindows/CVI Full Development System
主要软件版本: 8.1
主要软件修正版本: N/A
次要软件: N/A

问题: 当前面板的命令按钮被按下并且保持按下的状态时,我希望有一些重复的事件发生(比如说使用命令按钮控制一个立体声系统的音量)。在这种情况下,我需要不停地检测两件事,一是鼠标是否保持在按下的状态;另外就是鼠标的光标是否已经移除了按钮的区域。以上需求在LabWindows/CVI中如何实现呢?

解答: 在LabWindows/CVI中您可以通过GetGlobalMouseState()函数和GetRelativeMouseState()函数来实现以上功能。GetGlobalMouseState函数返回的是鼠标相对于屏幕上边和左边的位置。GetRelativeMouseState函数返回的是鼠标相对于所选中控件的上边和左边的位置这两个函数都可以处理鼠标左键和右键的事件,同样可以响应键盘快捷键。

您同样可以通过EnableExtendedMouseEvents()函数来使能鼠标的扩展功能。该函数可以在内建的鼠标事件之上响应以下扩展的鼠标事件:

LabWindows/CVI 8.1即以上版本已经把上述鼠标事件设置为内建,即不需要使用EnableExtendedMouseEvents函数来使能了。

参考LabWindows/CVI的帮助文档以获得内建鼠标事件和上述函数的更多信息。



相关链接: KnowledgeBase 4449ACGJ: Capturing Left and Right Click Up Mouse Events in LabWindows/CVI
Developer Zone Tutorial: Retrieving Mouse States
Developer Zone Example: Determine the Current State of the Mouse

附件:





报告日期: 12/18/1995
最近更新: 11/28/2007
文档编号: 0GHA3UZL