想实现一个按钮在点击后无效30秒钟时间,改如何处理?

javaman22 2010-09-19 09:18:59
AS3新人,最近在研究Flex,想要实现如标题所述功能,不知道应该从哪里入手,请高手提供一个思路,谢谢~
...全文
77 点赞 收藏 4
写回复
4 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
威尔亨特 2010-09-20
楼上真周到
回复
passself 2010-09-19

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
public var i:int = 30;
public var intervalId:Number;//定时器参数
private function clickFunction():void{
i = 30;
btn.enabled = false;
setTimeout(clickBack,30000);//三十秒
intervalId = setInterval(NumAdd,1000);
}

private function clickBack():void{
btn.enabled = true;
}

private function NumAdd():void{
i--;
if(i==0){
clearInterval(intervalId);
show.text="";
}
else
show.text = "距离按钮恢复还有" + i + "秒";
}
]]>
</mx:Script>
<mx:Canvas id="main" width="100%" height="100%">
<mx:Button id="btn" x="100" y="100" label="点击" click="clickFunction()" />
<mx:Label id="show" x="100" y="120" />
</mx:Canvas>
</mx:Application>


这个比较清晰
回复
leemiki 2010-09-19
Timmer类很好控制

disable或removeEventListener都可以
回复
passself 2010-09-19

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script>
<![CDATA[
private function clickFunction():void{
btn.enabled = false;
setTimeout(clickBack,30000);//三十秒
}

private function clickBack():void{
btn.enabled = true;
}
]]>
</mx:Script>
<mx:Canvas id="main" width="100%" height="100%">
<mx:Button id="btn" label="点击" click="clickFunction()" />
</mx:Canvas>
</mx:Application>

回复
相关推荐
发帖
Flex
创建于2007-12-13

4328

社区成员

多媒体/设计 Flex
申请成为版主
帖子事件
创建了帖子
2010-09-19 09:18
社区公告
暂无公告