站内搜索:     
站点首页破釜学院网页制作FlashAction应用 → 实现Flash的TextInput输入框自动填写功能
正在加载相关信息.....
Web 站内搜索
实现Flash的TextInput输入框自动填写功能
】【打印】【加入收藏】【关闭收藏到新浪ViVi】【收藏到365KEY】 浏览字号:
日期:2006-02-16 人气: 出处:闪吧 作者: ppanyong

如图所示,本教程利用flash的dataset和list组件,实现类似IE表单的自动记录功能。

用到的方法主要有:

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

首先,将组件 Dataset,TextInput,List 拖到主场景上。分别取名my_DS,  my_input , my_list。
然后,在关键祯上写AS代码如下:
import mx.data.components.datasetclasses.DataSetError;//导入Dataset错误处理
var inputID:String = "inputID04";
//在客户端缓存里的标识 类似Cookie的标识作用
function loadStr(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();
       }
}
function setStr(ID) {
       //存入Textinput的字符
       my_DS.loadFromSharedObj(ID, "/");
       var now:Date = new Date();
       my_DS.addItem({Str:this.my_input.text, date:now.getTime()});
       my_DS.saveToSharedObj(ID, "/");
}
function init(ID) {//初始化,导出存在本地的Dataset
       try {
              my_DS.loadFromSharedObj(ID, "/");
       } catch (e:DataSetError) {
              my_DS.saveToSharedObj(ID, "/");
       }
       loadStr(ID);
}
init(inputID);

var tiListener:Object = new Object();
tiListener.handleEvent = function(evt_obj:Object) {
       if (evt_obj.type == "enter") {
              //当用户按回车 则记录下输入的内容 
              setStr(inputID);
       }
};
// 添加侦听器。
my_input.addEventListener("enter", tiListener);

>>>> 进入论坛交流 <<<<