各位好,我最近在实现一个控制系统,控制系统的主界面上有四个按钮btnforward、btnback、btnleft、btnright,现在,需要实现的功能是,鼠标按下btnforward按键时,控制设备前进,鼠标抬起时,控制设备停止。
我的实现方法是:在btnforward的mousedown事件中,将一个布尔型的变量btnforwardisdown设置成true。然后,启动一个循环,让伺服按照固定的脉冲前进,循环的条件是btnforwardisdown变量,代码大致如下:
while(btnforwardisdown)
{
当前位置+=固定脉冲数;
....
}然后,在btnforward的mouseup事件中,将btnforwardisdown设置成false,这样循环就会终止。同时执行停止逻辑,大致代码如下:
btnforward=false;
停止逻辑....但是,设备能前进,却停止不了,因为btnforward的mouseup事件没捕获到,我加断点,单步跟踪的时候,却能够触发mouseup事件。
请问各位谁知道是怎么回事?感谢各位!鼠标事件捕获MouseUpMouseDown
我的实现方法是:在btnforward的mousedown事件中,将一个布尔型的变量btnforwardisdown设置成true。然后,启动一个循环,让伺服按照固定的脉冲前进,循环的条件是btnforwardisdown变量,代码大致如下:
while(btnforwardisdown)
{
当前位置+=固定脉冲数;
....
}然后,在btnforward的mouseup事件中,将btnforwardisdown设置成false,这样循环就会终止。同时执行停止逻辑,大致代码如下:
btnforward=false;
停止逻辑....但是,设备能前进,却停止不了,因为btnforward的mouseup事件没捕获到,我加断点,单步跟踪的时候,却能够触发mouseup事件。
请问各位谁知道是怎么回事?感谢各位!鼠标事件捕获MouseUpMouseDown
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货