- 加入SharedObject
- CSS Style学习
- 系统信息判断
- Timer例子
源码如下:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Style>
Button {
cornerRadius: 10;
highlightAlphas: 0.44, 0;
fillColors: #ffffff, #0099ff, #ffffff, #ffffff;
textRollOverColor: #0000ff;
themeColor: #000000;
}
</mx:Style>
<mx:Script>
<![CDATA[
import com.velloff.utils.JDBCBean;
import flash.net.registerClassAlias;
import mx.controls.Alert;
internal function btnXMLClick(evtObj:Event){
var xml:XML=<company>
<name>空山雪林工作室</name>
<description>学习测试用的</description>
<person no="1001">
<name>cxlh</name>
<job>manager</job>
</person>
<person no="1002">
<name>otherone</name>
<job>designer</job>
</person>
</company>;
appendText("得到工号为1001的雇员:\n<font color='#0000FF'>"+xml.person.(@no=="1001").name+"</font>");
var onePerson:XML = <person no="1003"><name>thd_one</name><job>developer</job></person>
xml.person +=onePerson;
appendText("新增工号为1003的雇员后:\n<font color='#0000FF'>"+escapeHTML(xml.toXMLString())+"</font>");
delete xml.person[2];
appendText("删除工号为1003的雇员后:\n<font color='#0000FF'>"+escapeHTML(xml.toXMLString())+"</font>");
}
private function byCustemer(valueA:*,valueB:*):Number
{
if(valueA == valueB) return 0;
else if(valueA < valueB) return -1;
else return 1;
}
internal function btnArrayClick(evtObj:Event){
var array:Array = [1,2,3,4,7];
array.splice(2,1);
appendText("原数组数据:<b>1,2,3,4,7</b>");
appendText("删除数组中的第三个元素后:<b>"+array.join(",").toString()+"</b>");
var z:Array=array.slice(0,2);
appendText("得到数组第1,2个元素:<b>"+z.join(",").toString()+"</b>");
array.push(10);
appendText("原数组新增一个数10后:<b>"+array.join(",").toString()+"</b>");
var sortArray:Array=array.sort(Array.DESCENDING|Array.NUMERIC);
appendText("逆序排列后:<b>"+array.toString()+"</b>");
array.sort(byCustemer,Array.DESCENDING);
appendText("自定义排列规则后:<b>"+array.toString()+"</b>");
}
internal function btnDictClick(evtObj:Event){
var dict:Dictionary = new Dictionary();
dict["one"] = 1;
dict["tow"] = 2;
appendText("词典中目前有:one:1,two:2,判断one结果:");
if("one" in dict){
appendText("词典中有:"+dict["one"]);
}
}
function sum(... numbers):Number{
var result:Number = 0;
for each(var num:Number in numbers){
result += num;
}
return result;
}
function fact(i:uint){
if(i==0)
return 1;
else
return (i*fact(i-1));
}
internal function btnFuncClick(evtObj:Event){
appendText("...操作符演示:\n<b>1+2+3="+sum(1,2,3)+"</b>,<b>"+"4+5="+sum(4,5)+"</b>");
appendText("递归阶乘演示:<b>10!="+fact(10)+"</b>");
}
internal function btnRegClick(evtObj:Event){
var oStr:String = "<font color='#0000FF'>一个串</font><font color='#FF0000'>另外一串</font>";
appendText("原始操作字符串:"+escapeHTML(oStr));
var reg1:RegExp = /<font color='#0000FF'>(.*)<\/font>/g;
var reg2:RegExp = /<font color='#0000FF'>(.*?)<\/font>/g;
appendText("正则表达式"+escapeHTML(reg1.toString())+"结果(贪婪模式):<b>"+escapeHTML(reg1.exec(oStr)[0])+"</b>");
appendText("正则表达式"+escapeHTML(reg2.toString())+"结果(非贪婪模式)<b>:"+escapeHTML(reg2.exec(oStr)[0])+"</b>");
}
internal function btnFlashVersionClick(evtObj:Event){
var ver:String = flash.system.Capabilities.version;
var os:String = flash.system.Capabilities.os;
var fType:String = flash.system.Capabilities.playerType;
var lang:String = flash.system.Capabilities.language;
appendText("Flash版本:<b>"+ver+"</b> 操作系统:<b>"+os+"</b> 播放器类型:<b>"+fType+"</b> 系统语言:<b>"+
lang+"</b> 输入法编辑器:<b>"+flash.system.IME.enabled.toString()+"</b> 分辨率:<b>"+
flash.system.Capabilities.screenResolutionX+"X"+flash.system.Capabilities.screenResolutionY+"</b>"+
" 是否有音频设备:<b>"+flash.system.Capabilities.hasAudio+"</b> MP3解码器:<b>"+flash.system.Capabilities.hasMP3+
"</b> 是否播放流式视频:<b>"+flash.system.Capabilities.hasStreamingVideo+"</b> 视频流编码:<b>"+flash.system.Capabilities.hasVideoEncoder+
"</b>");
}
internal function btnTimerClick(evtObj:Event){
var timer:Timer = new Timer(3000);
timer.addEventListener(TimerEvent.TIMER, onTimer);
timer.start();
}
internal function btnShareObjectClick(evtObj:Event){
registerClassAlias("com.velloff.utils.JDBCBean",JDBCBean);
var his:SharedObject = SharedObject.getLocal("storage");
for each(var ss in his.data){
if(ss is JDBCBean){
appendText("访问到jdbc的共享对象数据为:<i>"+(ss as JDBCBean).toString()+"</i>");
}
}
if(txtInput.text == "") return;
var jdbc:JDBCBean = new JDBCBean();
jdbc.driver = "mydriver";
jdbc.url = "myurl";
jdbc.username = txtInput.text;
jdbc.password = "mypwd";
his.data[txtInput.text] = jdbc;
appendText("设置jdbc为:<b>"+jdbc.toString()+"</b>");
}
internal function btnShareObjectDeleteClick(evtObj:Event){
var his:SharedObject = SharedObject.getLocal("storage");
his.clear();
his.flush();
}
private function onTimer(event:TimerEvent):void {
appendText("3秒过去了...");
}
internal function btnGraphClick(evtObj:Event){
var spr:Sprite = new Sprite();
spr.graphics.beginFill(0xffffff,0.5);
spr.graphics.lineStyle(1,0xcccccc);
spr.graphics.drawRect(10,10,50,50);
spr.graphics.endFill();
spr.addEventListener(MouseEvent.MOUSE_OVER,inRect);
spr.addEventListener(MouseEvent.MOUSE_OUT,outRect);
spr.addEventListener(MouseEvent.MOUSE_DOWN,mouseDown);
spr.addEventListener(MouseEvent.MOUSE_UP,mouseUp);
mylog.addChild(spr);
}
private function mouseDown(me:MouseEvent):void
{
(me.target as Sprite).startDrag();
}
private function mouseUp(me:MouseEvent):void
{
var t:Sprite = me.target as Sprite;
t.stopDrag();
appendText("拖放结束!");
}
private function inRect(fe:MouseEvent):void
{
if(fe.target is Sprite){
var s:Sprite = (fe.target as Sprite);
s.alpha = 0.5;
}
}
private function outRect(fe:MouseEvent):void
{
if(fe.target is Sprite){
var s:Sprite = (fe.target as Sprite);
s.alpha = 1.0;
}
}
internal function setLogScroll() : void
{
mylog.verticalScrollPosition = mylog.maxVerticalScrollPosition;
}
internal function appendText(str:String):void
{
mylog.htmlText += (mylog.htmlText==""?"":"\n") + str ;
callLater(setLogScroll);
}
function escapeHTML(str:String){
return str.replace(/</g,"<").replace(/>/g,">");
}
]]>
</mx:Script>
<mx:Button x="10" y="10" label="XML操作演示程序" fontSize="12" id="btnXML" click="btnXMLClick(event)"/>
<mx:Button x="150" y="10" label="Array操作演示程序" fontSize="12" id="btnArray" click="btnArrayClick(event)"/>
<mx:Button x="12" y="42" label="词典操作演示程序" fontSize="12" id="btnDict" click="btnDictClick(event)"/>
<mx:Button x="150" y="42" label="函数相关操作演示程序" fontSize="12" id="btnFunc" click="btnFuncClick(event)"/>
<mx:TextArea width="100%" height="180" id="mylog" x="10" y="117" fontSize="12"/>
<mx:Button x="299" y="10" label="正则表达式演示程序" fontSize="12" id="btnReg" click="btnRegClick(event)"/>
<mx:Button x="450" y="10" label="DisplayObject演示程序" fontSize="12" id="btnGraph" click="btnGraphClick(event)"/>
<mx:Button x="314" y="42" label="系统信息" fontSize="12" id="btnFlashVersion" click="btnFlashVersionClick(event)"/>
<mx:Button x="404" y="42" label="Timer学习" fontSize="12" id="btnTimer" click="btnTimerClick(event)"/>
<mx:Button x="12" y="85" label="ShareObject" fontSize="12" id="btnShareObject" click="btnShareObjectClick(event)"/>
<mx:TextInput id="txtInput" x="129" y="87" restrict="[a-z|0-9]" toolTip="输入jdbc用户名并作为sharedObject索引" width="89"/>
<mx:Button x="231" y="85" label="全部清空ShareObject" fontSize="12" id="btnShareObjectDelete" click="btnShareObjectDeleteClick(event)"/>
</mx:Application>
分享到:
相关推荐
### Flex 学习笔记知识点详解 ...以上总结了 Flex3 学习笔记中的关键知识点,涵盖从基础概念到高级应用的各个方面。通过系统学习这些内容,可以帮助开发者全面掌握 Flex 技术,并能够运用其构建高质量的 RIA 应用程序。
Flex AS3 学习笔记总结 Flex 是 Adobe 开发的 RIA(Rich Internet Applications)工具,包括 Flex3 SDK、Flex Builder 和服务器产品,如 Lifestyle Data Services、CodeFushion。Flex 应用程序用 Flash.swf 文件...
本教程是作者精心编写的Flex学习资料,适合初学者入门,通过图文并茂的方式,帮助读者快速掌握Flex的基本概念和核心技能。 1. **Flex基础**:Flex提供了MXML和ActionScript两种编程方式。MXML是一种声明式语言,...
Flex ActionScript 学习笔记是关于使用Adobe Flex技术并结合ActionScript 3.0进行开发的知识总结。ActionScript 3.0是随着Flash CS3一起推出的一种强大的编程语言,相较于之前的ActionScript版本,它有着显著的提升...
在本文中,我们将深入探讨Flex学习过程中的基础语法,特别是从AS2到AS3的变化。 首先,ActionScript 3(AS3)是AS的一个重大升级,它引入了完全的面向对象编程(OOP)概念。这意味着AS3具有类、继承、封装和多态性...
《FLEX学习笔记》 FLEX,全称为Flex Builder,是由Adobe公司开发的一款基于MXML和ActionScript的开源框架,用于构建富互联网应用程序(RIA)。它允许开发者创建具有交互性、响应性和丰富用户体验的Web应用。FLEX的...
《Away3D_4.1+Flex4.7学习笔记与案例解析》 Away3D是一个强大的开源3D引擎,专为Adobe Flash平台设计,它允许开发者创建丰富的、交互式的三维应用程序。本学习笔记结合Flex4.7框架,将深入探讨如何在Flash平台上...
本压缩包“Flex学习笔记.rar”显然是一份针对初学者的教程资料,旨在帮助新接触Flex的开发者快速上手。 在“FlexBeginner.pdf”这份文档中,你可以期待找到以下关键知识点: 1. **Flex概述**:介绍Flex技术的基本...
Flex开发学习笔记6.1主要聚焦于创建Flex Library Project,这是一种在Adobe Flex开发环境中构建可重用组件的方式。Flex Library Project允许开发者创建自定义组件,这些组件可以被多个应用程序共享,提高了代码复用...
Flex是Adobe公司开发的一种用于构建富互联网应用程序(RIA)的技术,它主要基于ActionScript和MXML。本笔记将深入探讨Flex的基本概念、架构...希望这份笔记能对Flex爱好者提供实质性的帮助,祝你在学习过程中取得成功!
3. **项目依赖**:如果你的开发环境支持,你还可以直接将Flex Library Project作为项目依赖添加。这样,当库项目更改时,主应用项目会自动编译,无需手动更新SWC。 在“MyFlexProj”这个例子中,我们可以假设它是一...
### Flex4.5学习笔记知识点总结 #### 一、Flex基础——布局 **知识点1:Flex布局** - **垂直布局** (`s:VerticalLayout`): 控件垂直排列。 - **水平布局** (`s:HorizontalLayout`): 控件水平排列。 - **平铺布局**...
FLEX4学习笔记,提供源代码,还有图。相当详细。
Flex学习笔记(flex必知必会).docFlex学习笔记(flex必知必会).doc
这篇“Flex学习笔记”可能是作者在深入研究Flex技术过程中整理的心得体会和实践案例,结合了《Flex3权威指南》这本书的内容。 在Flex中,ActionScript是核心编程语言,它是基于ECMAScript的一个版本,专门针对富...
Flex开发学习笔记4主要关注的是如何在Flex应用中实现分页列表组件,这对于构建大型数据展示界面至关重要。Flex是一个开源的、基于ActionScript的框架,用于创建富互联网应用程序(RIA)。在这里,我们不仅会探讨Flex...
根据提供的信息,我们可以总结出以下关于Flex学习笔记中的关键技术知识点: ### 1. Flex 基础设置 在Flex开发中,通常会涉及到基础样式的设置。例如,在给定的部分内容中提到了字体大小、颜色及背景色的设置。虽然...
Flex是Adobe公司推出的一种用于构建富互联网...随着对Flex的深入学习,开发者将掌握更多高级特性,如数据绑定、动画效果、组件自定义以及与后端服务器的深度集成等,从而能够创建出更复杂、功能丰富的富互联网应用。
Flex学习笔记概述 Flex是一种由Adobe开发的企业级富互联网应用(RIA)的表示层解决方案,其主要目的是提供高度交互和动态的用户体验。Flex的核心在于它的编程语言MXML和ActionScript(AS),这两种语言结合在一起,...