Flex 例子

转载 2013年12月05日 14:56:50

http://blog.csdn.net/sjz168/article/details/6980892


1,设置鼠标样式

//设置鼠标为忙:
cursorManager.setBusyCursor();
//设置鼠标为手:
useHandCursor="true"  
buttonMode="true"
mouseChildren="false" 

2,引入外部字体:

[Embed(source="verdana.ttf", 
fontName='rotateFont', 
mimeType='application/x-font'
)] 
private var rotateFont:Class;

3,获取外部穿参:

public function getApplicationVariable(key:String):String
{
var returnValue:String = "";
if (Application.application.parameters.hasOwnProperty(key))
{
returnValue = Application.application.parameters[key];
}
return returnValue;
}

4,从浏览器URL获取参数:

public static function getQueryParameters():Object
{
<span style="white-space:pre">	</span>var queryString:String;
<span style="white-space:pre">	</span>try{
<span style="white-space:pre">		</span>queryString= ExternalInterface.call("window.location.search.substring");
<span style="white-space:pre">	</span>}catch(error:Error)
<span style="white-space:pre">	</span>{
<span style="white-space:pre">		</span>logger.error("Error while getting query string", error);
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>if( queryString)
<span style="white-space:pre">	</span>{
<span style="white-space:pre">		</span>if( queryString.charAt(0) == '?' )
<span style="white-space:pre">			</span>queryString = queryString.substr(1);
<span style="white-space:pre">		</span>var loc = queryString.indexOf("#");
<span style="white-space:pre">		</span>if( loc >=0 )
<span style="white-space:pre">			</span>queryString = queryString.substr(0, loc);
<span style="white-space:pre">		</span>queryNameValue = URLUtil.stringToObject(queryString, "&");
<span style="white-space:pre">	</span>}
<span style="white-space:pre">	</span>else
<span style="white-space:pre">		</span>queryNameValue = new Object();
<span style="white-space:pre">	</span>return queryNameValue;
}


5,String和Object互转:

var s:String = "name=Alex&age=21";
var o:Object = URLUtil.stringToObject(s, "&", true);
Returns the object: { name: "Alex", age: 21 }
var o:Object = { name: "Alex", age: 21 };
var s:String = URLUtil.objectToString(o,"&",true);
trace(s);
Prints "name=Alex&age=21" to the trace log.

6,判断是否是上线,还是本地调试:
public static function isOnServer():Boolean
{
	var url:String;
	try{
		url= ExternalInterface.call("window.location.href.toString");
	}catch (error:Error)
	{
		logger.error("Error while getting launch url", error);	
	}
	if(url)
	{
		var server:String = URLUtil.getServerName(url);
		return (server != "localhost") ? false : true;
	}
	else
		return false;
	
}

7,获取浏览器地址:
var url:String = Application.application.systemManager.stage.loaderInfo.url;

8,异步访问解耦:
var responder:IResponder = new Responder(success, fault);
var asyncToken:AsyncToken = httpService.send();
asyncToken.addResponder(responder);

9,confirm弹出框:
Alert.show("提示内容","提示标题",Alert.OK|Alert.CANCEL,null,function(e:CloseEvent):void{
    if(e.detail
 == Alert.OK)
    {
        Alert.show("你点击了确定");
    }
    else if(e.detail
 == Alert.CANCEL)
    {
        Alert.show("你点击了取消");
    }
});
flags属性可以以下类型的任意一种:
1- Alert.YES
2- Alert.NO
3- Alert.YES | Alert.NO
4- Alert.OK
5- Alert.OK | Alert.YES
6- Alert.OK | Alert.NO
7- Alert.OK | Alert.YES | Alert.NO
8- Alert.CANCEL
9- Alert.YES | Alert.CANCEL
10- Alert.NO | Alert.CANCEL
11- Alert.YES | Alert.NO | Alert.CANCEL
12- Alert.OK | Alert.CANCEL
13- Alert.OK | Alert.YES | Alert.CANCEL
14- Alert.OK | Alert.NO | Alert.CANCEL
15- Alert.OK | Alert.YES | Alert.NO | Alert.CANCEL
16- Alert.OK (和4一样)
如果不填写flags,默认为4,即只有“确定”按钮

10,调用JS
通过ExternalInterface.call可以调用js中的对象,如dom对象,如:
var log : String = ExternalInterface.call("function(){return navigator.appVersion+'-'+navigator.appName;}") +"\n";

11, 日志
tracePanelTarget = new TracePanelTarget();
tracePanelTarget.filters=["dcs.*", "components.*", "com.*", "util.*"];  //"flex-iframe",
//tracePanelTarget.level = isProduction?LogEventLevel.INFO:LogEventLevel.ALL;
tracePanelTarget.level =0;
tracePanelTarget.includeDate = true;
tracePanelTarget.includeTime = true;				
tracePanelTarget.includeCategory = true;
tracePanelTarget.includeLevel = true;
Log.addTarget(tracePanelTarget);
Log.getLogger('components.custom.logger.LoggerConfig').info("Logging initialized.");

12,item render
public class SomeRenderer extends Label {
	
	private var _adg:AdvancedDataGrid;
	private var _column:AdvancedDataGridColumn;AdvancedDataGrid


	public function HotLinkItemRenderer(){
		this.addEventListener(MouseEvent.CLICK, hotLinkClick);
	}
	protected function hotLinkClick(event:MouseEvent):void
	{
		if(this.text != "0" && _column){
			var hotLinkClickEvent:HotLinkClickEvent = new HotLinkClickEvent(HotLinkClickEvent.type);
			hotLinkClickEvent.advancedDataGridColumn = AdvancedDataGridColumn(_column);
			hotLinkClickEvent.rowIndex = this.listData.rowIndex;
			hotLinkClickEvent.columnIndex = this.listData.columnIndex;
			hotLinkClickEvent.text = this.text;
			hotLinkClickEvent.rowData = this.data;
			this._adg.dispatchEvent(hotLinkClickEvent);
		}
	}
	
	override public function set listData(value:BaseListData):void {  
		if(value){
			super.listData = value;
			_adg = AdvancedDataGrid(listData.owner);
			_column = listData ? AdvancedDataGrid(listData.owner).columns[listData.columnIndex] : null;
		}
	}  
	
	override public function set data(value:Object):void{
		super.data = value;
		if(this.text != "0"){
			this.setStyle('textDecoration','underline');
			this.useHandCursor = true;
			this.buttonMode = true;
			this.mouseChildren=false; 
		}else{
			this.setStyle('textDecoration','none');
			this.useHandCursor = false;
			this.buttonMode = false;
			this.mouseChildren=true; 
		}
	}
		
	}
}


关于利用Flex lineChart绘制类似win系统下资源管理器时序图的例子

最近因为项目需要,需要实现linechart下的数据及时推进效果,类似win系统中监控cup资源的折线图效果,推进方向是从右到左,后来又扩展了从左到右边的方式,具体见代码。 从右边到左边的推荐,样式没...

flex 上传图片 例子

其实flex 上传图片的 mxml 文件是很好写的,只要知道他的几个监听器就可以了。   ImageUpload.mxml     ...

FLEX 树形菜单例子(三)

针对树形菜单的相关操作,实现的大致功能如下: 1.展开所有节点 2.关闭所有节点 3.选中某个节点并展开父节点 4.添加节点 5.修改节点 6.删除节点 7.修改节点图标 7.模糊查询...

(Flex 3D)Papervision3D加载DAE的例子

因为项目需要,我们需要在浏览器展现3D建筑模型。经过一段时间的技术选型,我们觉得Flex是现在浏览器展现3D模型比较成熟技术。我们工作流程也是美工根据实际物体或者场景制作3D的模型为DAE文件。Fle...
  • arjick
  • arjick
  • 2012年07月18日 11:18
  • 3050

Java+blazeds+Flex的例子

由于Flex不提供操作数据库的工具,所以必须和其他语言通信来操作数据库。blazeds是连接Java和Flex的工具,它是完全免费、开源的,大家可以去网上搜索下载。   要使用到的工具: Tom...

Tour de Flex经典例子(三)------SkinnableContainer(登陆界面)

CustomSkinnableContainerSkin.mxml

flex入门小例子

Flex中利用URLLoader和URLVariables类导入文件的例子

Peter在写这个例子的时候说“Not sure if this is helpful to anybody”,其他人不敢说,不过这个例子刚好是我所需要的–我在做的一个解析ActionScript文件...

Flex中CSS例子

Flex中Css参考示例CSS file 收藏  /* CSS file *//* Global{color: #FFFFFF;themeColor: #000000;} */Application{...
  • GIS__
  • GIS__
  • 2011年06月16日 18:34
  • 2690

Flex Graphics 画时间轴测试例子

视频监控的web观看端有视频回放这一块,需要做一个时间轴,下面是根据Graphics画的时间轴的例子 例子做的只是把时间轴网格,时间轴填充和会移动的时间画出来了,很多细节没有,例子中有用Flex画...
  • soanl
  • soanl
  • 2015年02月09日 17:04
  • 1562
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Flex 例子
举报原因:
原因补充:

(最多只允许输入30个字)