易截截图软件、单文件、免安装、纯绿色、仅160KB

FLEX 仿Google联想框效果

FLEX--仿Google联想框效果--现在好多地方都用到了这样的效果,当然,现在Google下线了,不让用了,但是跟网上说的一样,想办法,它还是能出来的
首先是事件源,也就是从何而起,如下的一个输入框:
复制代码 代码如下:
<mx:FormItem label="集团客户:" width="42%">
<!--change1-->
<mx:TextInput id="txtAssociation" width="235" maxChars="32" change="associate();"/>
</mx:FormItem>
然后就是处理效果,这些内容都是从数据库得到的数据,动态的查出的。
复制代码 代码如下:
import mx.collections.ArrayCollection;
import mx.events.FlexMouseEvent;
import mx.events.ListEvent;
import mx.managers.PopUpManager;
import resources.com.list.Association;
// 经过渲染的联想结果List
private var list:Association;
// 临时字符串,用于判断当keyUp事件发生时,联想框的值是否发生改变,如未改变则不联想
private var temp:String = '';
private function changeAssociation():void{
temp='';
txtAssociation.text='';
associationResult=null;
if(list != null){
PopUpManager.removePopUp(list);
list = null;
// 清空临时字符串
}
}
private function associate():void {
var str:String = txtAssociation.text;
if(str.length<2){
associationResult=null;
}
if (str != temp) {
if(str.length < 2){
if(list != null){
PopUpManager.removePopUp(list);
list = null;
// 清空临时字符串
temp = '';
}
return;
}
temp = str;
var params:Object = {};
params['areaNO'] = cbxArea.selectedItem.data;
params['netType'] = cbxNetType.selectedItem.data;
params['str'] = str;
params['handle'] = 'associate';
service4association.send(params);
}
}
private function openAssociation():void {
if(service4association.lastResult.items != null)
createAndShow(service4association.lastResult.items.item);
else if(list != null){
PopUpManager.removePopUp(list);
list = null;
// 清空临时字符串
temp = '';
}
}
private function createAndShow(dp:Object):void {
// 每次打开联想框以前, 先清理缓存
if(list != null){
// 将联想框从PopUpManager中移除
PopUpManager.


相关文档:

Flex基本原理

了解Flex程序的生命周期
Flex程序从本质上讲,就是使用了(由AS编写的)Flex框架的Flash程序。
但在Flex程序中可以忽略timeline这个概念,所有的内容都集于一帧。
事实上Flex程序中的根,是继承flash.display.MovieClip的mx.managers.SystemManager。
SystemManager有两帧。第一帧是预加载程序,第二帧是主程序。
因此 ......

[转]flex中Popup窗口访问父窗口的4种方法以及相互传值


1.如果使用MVC框架,相信这并不是一个问题。而如果没有使用的话,可以用类似的方法设置一个单例,子窗口和父窗口通过这个单例来交互消息,如果需要解耦,请发送自定义事件。总之,只要按照MVC思路来做就可以了。
2.类似JS,在子窗口的构造函数里增加一个参数,将父窗口传参进去。MXML没有构造函数,用一个属性来保存父窗 ......

Flex代码重构实录(1)

前言
    最近,正竭斯底里地重构flex技术平台开发的产品【wizBuilder CS】。以前为赶功能,界面部分代码都写得好乱,现在是时候修理下自己作的孽了,顺便为产品添加多语言支持(Localization)。
主要任务
代码重构
多语言支持
添加新功能、修改现有功能、去掉不合理的功能
修正重构过程中发现的 ......

flex 实现全文检索中的高亮显示代码

<mx:DataGrid id="dg" click="select()" dataProvider= "{modelLocator.resultList}" borderStyle="none"
verticalGridLines="false" horizontalGridLines="false" verticalScrollPolicy="off" rowCount="10"
fontSize="16" fontStyle="normal" fontThickness="0" width="100%" height="100%">
<mx:columns& ......

FLEX TitleWindow之间数据传输的示例


在Flex里,一般的弹出窗口(除了Alert以外)都可以用TitleWindow组件完成,主窗口和TitleWindow的数据传输可以用以下方法
假设TitleWindow的实例文件为titleWin.mxml,则要在Application中用PopUpManager创建一个titleWin的引用
private var popWin:titleWin = titleWin(PopUpManager.createPopUp(this,titleWin,true) ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号