Flex 实现鼠标手势 无码 );
声明:自己想的、写的东西,转载请注明出处; 不要向我要代码; from CSDN ID: wander000
目的:在做小程序时,显示一些重要的数据如帐号密码等,不想让别人直接看到,在指定组件上按规定好的轨迹晃动鼠标才显示。
问题:一、直接打开数据库不就看到明码了?二、怎么判断鼠标轨迹的形状?
解决:一、数据库存取时用上加解密。二、不判断轨迹的形状,判断经过的方向。
不管三七二十一,先把经过该组件的鼠标路径记录下来再说:
TrackArr.push( { "x" : e.localX, "y" : e.localY } );
//TrackArr记录鼠标移动的轨迹
其它事项:1、鼠标移出该组件,TrackArr清空。
2、鼠标一段时间不动表示动作结束,开始计算。
3、解锁后不应再响应事件,但在N秒内没有操作数据将再次加锁。
这几项问题不在这儿细讲了。
那现在有了轨迹数据,怎么判断是否按规定的轨迹晃动了呢?
先看下图:
假设以中心红点为第一点,第二点落在A的区域内,这两点的线段就认为是向上。
那又是怎么判断第二点在哪个区域呢?加减乘除白~
第二点的x <= 第一点的x : A D C 区 否则 : A B C 区
第二点的y <= 第一点的y : A D B 区 否则 : D B C 区
第二点的x - 第一点的x 的绝对值 / 第二点的y - 第一点的y 的绝对值 <=1 : A C 区 否则 : D B 区
好吧,你需要判断被除数是否为0(如果是0怎么办?考考你y2-y1=0……哪两区会出现这情况 ^.^) ,经过三重判断过滤后,只有一个区域会剩下,如:
x1=10 y1=10
&
相关文档:
1、XMLSocket对象简介
在概述里,已经提到过了Flash里的XMLSocket对象,它是实现Falsh和服务器Socket间
通信的核心。它允许包含Flash应用的浏览器与服务端建立socket连接,之后Flash应用与服务端就可以相互发送XML数据,而且在一个
socket连接建立之后,在该连接上传送的数据量是没有限制的,直到socket连接关闭。XMLSoc ......
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" width="100%" height="100%"
viewSourceURL="srcview/index.html" backgroundColor="0x000000" layout="absolute">
<mx:Script>
&nb ......
flex 装载多个module出现: 强制转换类型失败,出现某些类不能转换
例如:
无法将 mx.managers::PopUpManagerImpl@7155ac1 转换为 mx.managers.IPopUpManager。
解决方法是在Application加入引用
1.
import
mx.managers.DragManager;
private
var dragManager : DragManager;
2. ......