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友好提示、警告的更多相关文章

  1. Altium Designer 出现错误提示(警告)adding items to hidden net GND/VCC

    一般出现这个提示,不是错误. 可以取消net 网格标号 这样就不会报这个警告了. 还可以设置规则,不让它报告. 点击确定,但是再次打开工程时有得警告这个错误了.我想,还是取消NET标注.

  2. tomcat提示警告: An attempt was made to authenticate the locked user"tomcat"

    启动tomcat7之后,运行正常,但是运行一段时间就会提示以下警告: 十二月 04, 2013 5:10:15 下午 org.apache.catalina.realm.LockOutRealm au ...

  3. iOS-硬件声音 ,振动,提示警告

    为了引起用户注意发出警告的时候,常常伴随有提示音震动等.系统声音服务提供了一个接口,用于播放不超过30秒的声音文件,他支持的格式有CAF,AIF,WAV. iOS使用该API支持3种不同的通知: 声音 ...

  4. ME21N增强提示警告消息

    在ME21N增强中,可以使用message的方法提示错误的消息,但警告消息使用message则提示不了,需要使用系统宏mmpur_message 提示. data:begin of lw_equp, ...

  5. Qt之实现网络下发配置的半透明友好提示界面

    一.说明 在使用Qt开发的网管客户端程序中,网管客户端主要负责显示设备信息以及对设备下发配置信息等,如配置设备名字.更新设备程序等:由于在网管客户端程序的操作要先经过服务器处理,再由服务器将该命令转发 ...

  6. 重写alert方法完成类似gmail的友好提示

    当在网页中调用aelrt()方法的时候,系统会自动显示友好的提示方式 . 下面是css样式控制代码: /*----------------------------------------------- ...

  7. vue-router 实现无效路由(404)的友好提示

    最近在做一个基于vue-router的SPA,想对无效路由(404)页面做下统一处理.这次我真的没有在官方文档找到具体的说明[捂脸]所以本文仅是我DIY的一个思路,求轻虐=_= 在我的理解中,vue- ...

  8. WPF Adorner+附加属性 实现控件友好提示

    标题太空泛,直接上图 无论是在验证啊,还是提示方面等一些右上角的角标之类的效果,我们会怎么做? 这里介绍一种稍微简单一些的方法,利用附加属性和Adorner来完成. 例如WPF自带的控件上要加这样的效 ...

  9. js友好提示是否继续,post提交

    <script type="text/javascript"> function delcheck(qId,typeid) { if (!confirm('确定删除吗? ...

随机推荐

  1. apache开源项目--Synapse

    Apache Synapse一个易于使用.轻量级的XML与Web Services管理和集成中间件.可用于搭建SOA和ESB的基础平台.Apache Synapse支持多种标准包括:XML.XSLT. ...

  2. 【原创】回溯线搜索 Backtracking line search

    机器学习中很多数值优化算法都会用到线搜索(line search).线搜索的目的是在搜索方向上找到是目标函数\(f(x)\)最小的点.然而,精确找到最小点比较耗时,由于搜索方向本来就是近似,所以用较小 ...

  3. dbms_stats.gather_table_stats与analyze table 的区别[转贴]

    Analyze StatementThe ANALYZE statement can be used to gather statistics for a specific table, index ...

  4. c# List<int> 转 string 以及 string [] 转 List<int>

    List<int> 转 string : list<int>: 1,2,3,4,5,6,7  转换成字符串:“1,2,3,4,5,6,7” List<int> li ...

  5. 【c++内存分布系列】单独一个类

    首先要明确类型本身是没有具体地址的,它是为了给编译器生成相应对象提供依据.只有编译器生成的对象才有明确的地址. 一.空类 形如下面的类A,类里没有任何成员变量,类的sizeof值为1. #includ ...

  6. esd-ESD试题

    ylbtech-doc:esd-ESD试题 ESD试题 1.A,ESD试题返回顶部 不定项选择题(下列选择题ABCD四项中至少有一项是正确的,共20小题): 1.{ESD题目}储备阶段的几个主要岗位是 ...

  7. C#常用格式输出

    ylbtech- .NET-Basic:C#常用格式输出 C#常用格式输出 1.A,相关概念返回顶部 using System; namespace Test { class Formating { ...

  8. 【LeetCode 231】Power of Two

    Given an integer, write a function to determine if it is a power of two. 思路: 如果一个数是2的Power,那么该数的二进制串 ...

  9. 数据库连接类oracleHelper

    //=============================================================================== // OracleHelper ba ...

  10. 【暑假】[实用数据结构]UVa11995 I Can Guess the Data Structure!

    UVa11995  I Can Guess the Data Structure! 思路:边读边模拟,注意empty的判断! 代码如下: #include<iostream> #inclu ...