Jas*_*son 8 flash actionscript-3 flash-builder
我在使用MOUSE_WHEEL delta值时遇到了一些问题.看起来事件并没有发射,除非我真的旋转了拦截的车轮.这是有道理的,因为我得到的唯一值是3-30.我希望能够抓到1-3,因为如果我只旋转几个凹槽,没有任何触发器,应用程序感觉迟钝.
仅供我在我的机器上的其他程序感觉那些1档的旋转很好,所以它不是鼠标.如果delta小于3,AS3会不会触发吗?
这是代码
private function handleMouseWheel(e:MouseEvent):void {
trace(e.delta);
// Output is always more/less than +/- 3
}
private function handleStageInit(e:Event):void {
stage.addEventListener(MouseEvent.MOUSE_WHEEL, handleMouseWheel);
}
Run Code Online (Sandbox Code Playgroud)
AS3没有任何可定制的车轮灵敏度值.
我认为,它的工作方式取决于物理鼠标和操作系统设置.
例如,在Windows中,您可以在ControlPanel - >鼠标中设置各种鼠标设置的灵敏度.
在"车轮"选项卡中,用户可以设置车轮为每个物理凹口执行的线数(例如,增量).默认值为3.
同时,每只物理鼠标具有不同的陷波灵敏度,例如.你需要多少钱才能在操作系统中注册"缺口".
我相信swf的容器也有一些影响,因此在不同的浏览器,投影仪和IDE中可能会有不同的表现.
对于浏览器,大多数人似乎绕过闪存并将JavaScript滚轮事件监听/传递到闪存中:
查看这些库:
https://github.com/digi604/As3-Mouse-Wheel-Fixer
http://labs.byhook.com/2010/04/09/flash-mouse-wheel-support/
根据 ilike2Flash 的说法,增量的变化可能取决于用户的鼠标。