0
你如何获得鼠标移动,但只有当你点击。鼠标移动,而鼠标没有在Dart工作?
我知道这是你如何跟踪鼠标是否被点击:
canvas.onMouseDown
,这是你如何跟踪鼠标移动canvas.onMouseMove
所以我试着这样做:
//when the mouse is clicked
canvas.onMouseDown.listen((onData){
print("Mouse is down!" + "(" + onData.client.x.toString() + ", " + onData.client.y.toString() + ")");
//check where it's being dragged
canvas.onMouseMove.listen((onData){
mouseMovementsDown(onData.client.x, onData.client.y);
});
});
但问题是它不停止,一旦我停止点击。只要鼠标关闭,我想跟踪移动,一旦鼠标不再下移,我想停止跟踪鼠标的移动。谁能帮我?出于某种原因,这件事情继续报告canvas.onMouseMove,即使我把鼠标放在上面。
我也试过这样:
if(canvas.onMouseDown.listen(onData) == true)
但很显然,这不是事情镖如何工作>>。
我在dart api docs上了解了更多关于流的信息,有人可以向我解释接近的用法吗?我认为它说这就是你如何停止从鼠标事件获取输入,但是如何做到这一点,我不真正了解canvas.onMouseUp发生时如何编写代码来停止canvas.onMouseMove.listen流。
谢谢!这工作完美! :d – user3505901