`
blueram
  • 浏览: 757432 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

flex捕获键盘长按事件

    博客分类:
  • Flex
 
阅读更多

项目需要,在flex air中对长按键做出处理,我是这样定义长按键的。

当键盘按下时记录按下状态isPressed=true;

键盘弹起时isPressed=flase;

添加计时器,长按5s,触发处理事件。

 

<?xml version="1.0" encoding="utf-8"?>
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009" 
					   xmlns:s="library://ns.adobe.com/flex/spark" 
					   xmlns:mx="library://ns.adobe.com/flex/mx" xmlns:utils="com.plter.air.windows.utils.*" keyDown="onKeyWown(event)" keyUp="onkeyup(event)">
	
	
	<fx:Script>
		<![CDATA[
			import mx.controls.Alert;
			import com.plter.air.windows.utils.ShutdownCommand;
		
			private var keycount:int = 0;
			private var isPressed:Boolean = false;
			private var timer:Timer = new Timer(5000, 1);
			
			protected function onKeyWown(event:KeyboardEvent):void
			{
				trace("downKey:" + event.keyCode);
				//Alert.show("downKey:" + event.keyCode);
				isPressed = true;
				if(event.keyCode == 13 && keycount == 0) {					
					timer.addEventListener(TimerEvent.TIMER, onTimerHandler);
					timer.start();							
				}				
				keycount = keycount+1;
			}
			
			function onTimerHandler(event:TimerEvent):void{
				trace("on timer");
				if(keycount > 30 && isPressed){
					trace(keycount);
					trace("关机");
					//shutdown.shutdown(3);
				} else {
					trace("长按5s关机")
					
				}
				keycount = 0;
			}
			
			protected function onkeyup(event:KeyboardEvent):void
			{				
				trace("upKey:" + event.keyCode);				
				isPressed = false;		
				timer.stop();
				trace("timer stop:" + keycount);
				keycount = 0;
			}
			
		]]>
	</fx:Script>
	
	<fx:Declarations>
		<!-- 将非可视元素(例如服务、值对象)放在此处 -->
		
		<utils:ShutdownCommand id="shutdown"/>
		
		
	</fx:Declarations>
	<s:Label width="70" height="20" horizontalCenter="-63" text="按键信息:" verticalCenter="-39"/>
	<s:Label id="msg" x="583" y="182" width="244" height="51" text=""/>
	<s:Button x="290" y="112" label="按钮" />
</s:WindowedApplication>
分享到:
评论

相关推荐

    flex事件flex事件flex事件flex事件

    flex事件flex事件flex事件flex事件flex事件

    flex监听浏览器关闭事件

    flex监听浏览器关闭事件,完成对于浏览器关闭事件的监听。以及弹出相应的关闭提示

    flex软键盘

    flex实现的软键盘,触摸屏使用的,可以在源码基础上面进行修改,例子

    Flex各自定义组件事件通讯例子

    Flex各自定义组件事件通讯例子,简单的用户登录和组件之间的跳转!

    精通flex3.0 精通 Flex3.0 LCDS ActionScript 事件

    精通flex3.0 精通 Flex3.0 LCDS ActionScript 事件

    flex4自定义事件用法

    flex4 自定义事件 用法 源码 完整项目导入可运行

    flex 事件与自定义事件

    如何接收事件?如何做到AS3.0的标准事件编程? 类似JAVA的监听或观察者模式 Event改变的部分很多,正在想怎样用一个有条理的方式来讲解Event和它相关的诸多内容,让我们感到比较容易理解,记忆和接受。

    Flex自定义组件和事件

    Flex自定义组件和自定义事件的使用。 Flex自定义组件和自定义事件的使用。

    flex控件事件

    flex控件事件flex控件事件flex控件事件flex控件事件

    Flex事件机制详细说明

    快速掌握flex的事件机制,让你灵活运用flex的事件完成所有功能。

    flex事件运行流程

    flex事件运行流程

    flex事件机制的分发

    flex事件机制,flex事件机制的分发,flex事件机制,flex事件机制的分发,flex事件机制,flex事件机制的分发,flex事件机制,flex事件机制的分发,flex事件机制,flex事件机制的分发

    flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图

    flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图flex 地图...

    Flex Tree 的右键菜单事件

    该代码是在Flex实现右键的具体实现方法。 如有不明可发信息咨询活留言。

    Flex事件机制(通俗易懂)

    Flex事件机制,其实Flex的核心就是事件,了解了其中的原理,学习起Flex就不是很难了,这篇的内容对初学者有很大的帮助,我从中受益很多,看完之后,对Flex的认识进一步加深了,很好的资料。希望对大家有所帮助。

    flex事件机制的demo

    Flex ActionScript3.0事件机制的Demo, 举例说明了事件的三个阶段,事件的派发,事件的侦听,事件的拦截,自定义事件等相关知识点. 以上知识点在Demo中都有体现,初学者请仔细分析代码,加强理解,多调试、修改、验证以加深...

    flex自定义事件、简单例子说明

    flex自定义事件的含义 简单例子说明 。。。。。。。。。。

    FLEX特效FLEX特效FLEX特效FLEX特效

    FLEX特效FLEX特效FLEX特效FLEX特效 FLEX特效FLEX特效FLEX特效FLEX特效 FLEX特效FLEX特效FLEX特效FLEX特效 FLEX特效FLEX特效FLEX特效FLEX特效

    关于flex事件的讲解

    关于flex事件的讲解 一. 引 很多新人对Flex的事件机制都不太熟悉,在使用过程中难免会出现各种问题,这是一个非常普遍的问题,为了更快更好的帮助大家,将介绍一下Flex中事件的各种机制和用法。 Flex的精髓之一...

    Flex Flex Flex Flex

    Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex Flex ...

Global site tag (gtag.js) - Google Analytics