Flex友好提示、警告
Flex 自带的Alert带给用户的体验并不好,对于一些简单的提示来说,这个小题大作了。
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Script>
<![CDATA[
protected function popupBtn_clickHandler(event:MouseEvent):void
{
AlertUtil.show(this,"hello,world","保存成功");
}
]]>
</fx:Script>
<fx:Declarations>
</fx:Declarations>
<s:Button id="popupBtn" x="562" y="273" label="弹窗" click="popupBtn_clickHandler(event)"/>
</s:Application>
<p>/**
* hisuper_hjx,上午10:49:24
*/
package
{
import flash.events.TimerEvent;
import flash.utils.Timer;
import mx.core.FlexGlobals;
import mx.core.IFlexDisplayObject;
import mx.core.UIComponent;
import mx.events.EffectEvent;
import mx.managers.PopUpManager;
import spark.components.Application;
import spark.effects.Fade;</p><p> public class AlertUtil
{
public function AlertUtil()
{
}
//显示内容
public static function show(title:String="",content:String="",time:Number=1000):void{
var application:Application=FlexGlobals.topLevelApplication as Application;
var alertLabel:AlertLabel=new AlertLabel();//弹窗组件;
var timer:Timer=new Timer(time);//计时器
var fade:Fade=new Fade();//渐变
fade.alphaFrom=0;
fade.alphaTo=1;
fade.target=alertLabel;
fade.duration=300;
alertLabel.text=content;
PopUpManager.addPopUp(alertLabel,application);//弹窗;
PopUpManager.centerPopUp(alertLabel);
fade.play();
timer.addEventListener(TimerEvent.TIMER,function timerEventHandler(event:TimerEvent):void{
fade.alphaFrom=1;
fade.alphaTo=0;
fade.play();
fade.addEventListener(EffectEvent.EFFECT_END,function fadeEndHandler(event:EffectEvent):void{
PopUpManager.removePopUp(alertLabel);
});
});
timer.start();
}
}
}</p>
/**
* hisuper_hjx,上午11:05:47
*/
package
{
import skins.AlertLabelSkin;
import spark.components.supportClasses.SkinnableComponent;
public class AlertLabel extends SkinnableComponent
{
private var _text:String
public function AlertLabel()
{
super();
setStyle("skinClass",AlertLabelSkin);
}
[Bindable]
public function get text():String
{
return _text;
}
public function set text(value:String):void
{
_text = value;
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<s:Skin xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx"
width="160" height="100">
<!-- host component -->
<fx:Metadata>
[HostComponent("AlertLabel")]
</fx:Metadata>
<s:Group left="0" right="0" top="0" bottom="0">
<s:Group left="0" right="0" top="0" bottom="0">
<s:Rect left="0" right="0" top="0" bottom="0" radiusX="20" radiusY="20">
<s:fill>
<s:SolidColor color="0"/>
</s:fill>
</s:Rect>
</s:Group>
<s:Label id="label" color="0xffffff" fontSize="18" horizontalCenter="0"
text="{hostComponent.text}" verticalCenter="0"
fontFamily="微软雅黑"/>
</s:Group>
</s:Skin>
Flex友好提示、警告的更多相关文章
- Altium Designer 出现错误提示(警告)adding items to hidden net GND/VCC
一般出现这个提示,不是错误. 可以取消net 网格标号 这样就不会报这个警告了. 还可以设置规则,不让它报告. 点击确定,但是再次打开工程时有得警告这个错误了.我想,还是取消NET标注.
- tomcat提示警告: An attempt was made to authenticate the locked user"tomcat"
启动tomcat7之后,运行正常,但是运行一段时间就会提示以下警告: 十二月 04, 2013 5:10:15 下午 org.apache.catalina.realm.LockOutRealm au ...
- iOS-硬件声音 ,振动,提示警告
为了引起用户注意发出警告的时候,常常伴随有提示音震动等.系统声音服务提供了一个接口,用于播放不超过30秒的声音文件,他支持的格式有CAF,AIF,WAV. iOS使用该API支持3种不同的通知: 声音 ...
- ME21N增强提示警告消息
在ME21N增强中,可以使用message的方法提示错误的消息,但警告消息使用message则提示不了,需要使用系统宏mmpur_message 提示. data:begin of lw_equp, ...
- Qt之实现网络下发配置的半透明友好提示界面
一.说明 在使用Qt开发的网管客户端程序中,网管客户端主要负责显示设备信息以及对设备下发配置信息等,如配置设备名字.更新设备程序等:由于在网管客户端程序的操作要先经过服务器处理,再由服务器将该命令转发 ...
- 重写alert方法完成类似gmail的友好提示
当在网页中调用aelrt()方法的时候,系统会自动显示友好的提示方式 . 下面是css样式控制代码: /*----------------------------------------------- ...
- vue-router 实现无效路由(404)的友好提示
最近在做一个基于vue-router的SPA,想对无效路由(404)页面做下统一处理.这次我真的没有在官方文档找到具体的说明[捂脸]所以本文仅是我DIY的一个思路,求轻虐=_= 在我的理解中,vue- ...
- WPF Adorner+附加属性 实现控件友好提示
标题太空泛,直接上图 无论是在验证啊,还是提示方面等一些右上角的角标之类的效果,我们会怎么做? 这里介绍一种稍微简单一些的方法,利用附加属性和Adorner来完成. 例如WPF自带的控件上要加这样的效 ...
- js友好提示是否继续,post提交
<script type="text/javascript"> function delcheck(qId,typeid) { if (!confirm('确定删除吗? ...
随机推荐
- substring函数——sql
--substring( expression, start, length ) expression待截取的文字 start 截取位置的起始下标 length 要截取的长度 --左边第一个字符的下标 ...
- Darwin Streaming Server 简介
Darwin Streaming Server 概要 Darwin Streaming Server简称DSS.DSS是Apple公司提供的开源实时流媒体播放服务器程序.整个程序使用C++编写 ...
- 【经典DFS】NYOJ-1058-部分和问题
[题目链接:NYOJ-1058] 看到题目难度是2,所以想也没想,直接循环比较...结果果然... 是错的. #include<cstdio> #include<cstring> ...
- 使用val()另一个妙用------选中select/checkbox/radio的值
一直认为val()方法只有两个功能:1.能设置元素的值,2.获取元素的值.知道val()方法还有另外一个妙用,就是它能使select(下拉列表框).checkbox(多选框)和radio(单选框)相应 ...
- 动态创建WebService
WebService应用主要是为远程提供接口服务,远程通过代理方式获取WebService资源:但是在现实应用过程中,在Web或者应用程序中如果想用生成远程代理,一般是借助vs里提供的 添加-添加we ...
- visio 改变画布大小
按住键盘Ctrl键,将鼠标箭头移动到画布边界处就可以自由拖动画布大小了.
- [Tommas] 一种有效的测试策略(转)
在最近的一个大型项目中,我们在早期就定下了一个目标:不会在软件中使用大量QA人员专注于手工测试.通过手工测试发现bug极其耗时且成本高昂,这促使团队尝试尽可能的将质量内嵌到产品内部.但这并不意味着手工 ...
- MockMvc和Mockito之酷炫使用
由于项目中需要添加单元测试,所以查询之后发现Mockito非常适合现在的web项目. 首先需要添加pom依赖: <dependency> <groupId>junit</ ...
- Fedora22(Gnome桌面)安装Chrome
1.从官网上(http://www.google.cn/chrome/)下载到相对应系统版本的rpm包.这里我的是: google-chrome-stable_current_x86_64.rpm 此 ...
- LeetCode题解——Regular Expression Matching
题目: 正则表达式的匹配,'.'能匹配任何一个字符,'*'之前必须有一个字符,两个结合起来表示之前那个字符出现0到无穷次. 解法: 一定要注意'*'必须结合前面的字符一起使用. 代码: class S ...