1)我想实现的程序是,单击一个控件时,做一件事情;双击它时,做另外一件事。
如果VC,有single click和double click两个事件,比较方便。可是LabVIEW没有single click事件。我只能用mouse up或者mouse down来代替。但它们在我双击时也会产生,这不是我想要的。我现在的解决办法是mouse up事件被触发时,启动一个延时,比如说100毫秒。如果100毫秒内有double click事件发生,则取消延时,处理double click事件。当延时结束,还没有double click事件发生则看作是single click事件发生。
这种做法有个问题,就是延时到底设多少才好呢?Windows的double click时间间隔是可以由用户修改的。我在我的机器上设置延时100毫秒可以运行,可能拿到用户那里就出错了。
选择mouse down或mouse down?后在事件处理框中有事件属性可以设置,MOD中可以选择Double Click
如果不是老兄提起,还真没注意这个问题,居然没有double click时间(只有个别控件有),我想可能LabVIEW为了模拟真实仪器不提供的。对于你的问题,有个笨方法,使用注册表VI查找鼠标的双击数度HKEY_CURRENT_USER\Control anel\Mouse下DoubleClickSpeed。LabVIEW有注册表的例子。
2)我知道如何得到dobule click的事件,问题是如何得到single click事件。(dobule click的第一次按键不应触发此事件)
knowledge base里面有关于double click事件的example program。
1)能否设置成将 control或者Alt加上某个大写字母的,而不是加上F1,F2等等
advaced>key navigation,但里面可设定的快捷键是规定好的,不能自己定义.
可以用 EVENT STRUCTURE
还有一个愚蠢的办法,先看附件。
先响应功能键,再响应其他键,再把它们组合起来去响应其他的菜单或命令。注意应该把它放在一个单独的、外层 LOOP
文章评论(0条评论)
登录后参与讨论