实例讲解Flex3的SharedObject对象用法

实例讲解Flex3的SharedObject对象用法

     Flex中的SharedObject对象可以实现web开发中的Cookie的功能,本例用到以下方法:

    1.SharedObject.getLocal() 创建或连接本地共享对象;

    2.SharedObject.flush() 立即把共享对象数据写入本地文件;

    3.SharedObject.clear() 方法用于删除本地共享对象;      闲话不多说,看代码:(讲解都在代码的注释中)

<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="initApp()" layout="absolute">

	<mx:Script>

		<![CDATA[

			import flash.net.SharedObject;

			import mx.controls.Alert;

			

			//声明一个SharedObject对象

			var so:SharedObject;

			

			public function initApp():void

			{

				//创建一个SharedObject对象(如果该对象存在,则直接获取),后面的“so_name”是自己起的名字,将来该对象会以so_name.sol文件的形式存在电脑中

				so=SharedObject.getLocal("so_loginInfo");

				

				//如果创建的SharedObject对象为null,说明没有创建成功

				if(null==so)

				{

					Alert.show("目前还没有SharedObject对象存在!","error");

				}else

				{

					//从SharedObject对象中取出事先存入的信息,然后写到文本框中(最初的时候,so对象中没有值,所以文本框中什么也不显示。)

					txt_username.text=so.data.username;

					txt_password.text=so.data.password;

				}

			}

			//save按钮的click事件(单击save按钮以后,可以刷新或重新打开浏览器看看效果)

			public function saveHandler():void

			{

				//将文本框中的文本保存到SharedObject对象中。"so.data."后面的名字可以自己随便起,只要存和取用的名字一致就行

				so.data.username=txt_username.text;

				so.data.password=txt_password.text;

				//立即把共享对象数据写入本地文件

				so.flush();

			}

			

			//删除共享对象(单击“删除共享对象”按钮以后,可以刷新或重新打开浏览器看看效果)

			public function deleteSO():void

			{

				if(so!=null)

				{

					so.clear();

				}

			}

		]]>

	</mx:Script>

		

	<mx:Label x="25" y="77" text="Username:" width="138" fontSize="21"/>

	<mx:TextInput id="txt_username" x="152" y="75" fontSize="21" width="239" height="45"/>

	<mx:Label x="25" y="138" text="Password:" fontSize="21"/>

	<mx:TextInput x="152" y="138" width="239" height="41" fontSize="21" id="txt_password"/>

	<mx:Button x="129" y="208" label="Save" click="saveHandler()" width="145" height="36"/>

	<mx:Button x="299" y="222" label="删除共享对象" click="deleteSO()"/>

</mx:Application>

你可能感兴趣的:(web开发,function,Flex,null,application,button)