实现Flash的TextInput输入框自动填写功能

王朝other·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

如图所示,

本教程利用flash的dataset和list组件,实现类似IE表单的自动记录功能。用到的方法主要有:

Dataset.loadFromSharedObj(对象名称,本地路径);

Dataset.saveToSharedObj(对象名称,本地路径);

Dataset.addSort();

首先,将组件 Dataset,TextInput,List 拖到主场景上。分别取名my_DS, my_input , my_list。

然后,在关键祯上写AS代码如下:

importmx.data.components.datasetclasses.DataSetError;//导入Dataset错误处理

varinputID:String="inputID04";

//在客户端缓存里的标识类似Cookie的标识作用

functionloadStr(ID){//导入本地存储的数据,并写入List

my_DS.loadFromSharedObj(ID,"/");

var_length:Number=my_DS.items.length;

key=ID;

if(my_DS.length!=0){

//对数据按照日期进行排序

if(!my_DS.hasSort(key)){

my_DS.addSort(key,["date"],DataSetIterator.Descending);

my_DS.useSort(key,DataSetIterator.Descending);

}else{

my_DS.useSort(key,DataSetIterator.Descending);

}

}

my_DS.last();

for(i=0;i<_length;i++){//在List组件中显示出记录

this.my_list.addItem({label:my_DS.currentItem.Str});

my_DS.previous();

}

}

functionsetStr(ID){

//存入Textinput的字符

my_DS.loadFromSharedObj(ID,"/");

varnow:Date=newDate();

my_DS.addItem({Str:this.my_input.text,date:now.getTime()});

my_DS.saveToSharedObj(ID,"/");

}

functioninit(ID){//初始化,导出存在本地的Dataset

try{

my_DS.loadFromSharedObj(ID,"/");

}catch(e:DataSetError){

my_DS.saveToSharedObj(ID,"/");

}

loadStr(ID);

}

init(inputID);

vartiListener:Object=newObject();

tiListener.handleEvent=function(evt_obj:Object){

if(evt_obj.type=="enter"){

//当用户按回车则记录下输入的内容

setStr(inputID);

}

};

//添加侦听器。

my_input.addEventListener("enter",tiListener);

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航