flex分页控件源码


  功能说明:只配合服务器端分页。这个分页条是通用的。只需要在其它页面引用即可。这里肯定有网友会问到:数据源问题如何解决。很简单。你只需从引用的页面传入一个ArrayCollection和总页数给这个控件,当然你还要在AS代码中实现指定名称的查询方法。见蓝色部分代码。其它事情由它负责搞定。本分页条支持键盘上左右上下键分页。
  传入参数:ArrayCollection(你要显示的数据,当然是封装在了ArrayCollection中)和总页数
  输出参数:当前页数和触发事件的控件名称(如button或combox)
  源码如下:
  
  height="26"
  fontSize="12" 
  creationComplete="this.init()">
  
  1)
  {
  this.lbtnNext.enabled=true;
  this.lbtnLast.enabled=true;
  }
  this.currentPage=1;
  this.setCombox();
  }
  //
  private function setCombox():void
  {
  this.comboxArrayCollection = new ArrayCollection();     
  for(var i:int=1 ;i1)
  {
  this.lbtnPrevious.enabled=true;
  this.lbtnFirst.enabled=true;
  }
  if(currentPage==1)
  {
  this.lbtnPrevious.enabled=false;
  this.lbtnFirst.enabled=false;
  }
  this.changeComboxIndex(this.currentPage-1);
  }
  private function changeComboxIndex(index:int):void
  {
  this.combox_index.selectedIndex =index; 
  }
  ]]>
  
  说明:当页面初始化时,整个分页条是未激活的状态。只有点击了引用的页面上的查询按钮,并且有结果的时候,它才会被激活。
  
  
  
  
  
  
  代码肯定有不完善的地方,欢迎大家指点。
  看到这篇文章点击率比较高,因此,今天特意花时间完善一下这篇文章。下面贴出引用页面的代码并进行详细讲解,希望对大家有所帮助!好东西大家分享!
  
  height="520"
  xmlns:ns1="view.util.*"    //上面的分页条组件页面是放在flex_src/view/util下面的,所以这个地方如此引用。
  xmlns:ns2="view.checkout.*"
  creationComplete="this.init();">
  
  
  
  height="83" layout="absolute" horizontalAlign="center"  y="-11">
  
  
    
  height="24"/>
  
  height="30"/>
  
  height="24"/>
  
  
   //这里是具体引用分页组件地方。注意这里fatherObject 必须和分页组件代码中定义的一致。
  height="382" width="560" dataProvider="{rentRecordData}" id="datagrid">
  
  
  
  
  
  
  
  
  
  height="100%"/>
  height="410"/>
  
  
  Session.as文件源码:
  package util
  {
  public class Session
  {
  public function Session()
  {
  }
  //总页数
  public static var  PAGE_COUNT :Number = 0;
  //组件名称
  public static var COMPONENT:String;
  }
  }

猜你喜欢

转载自moj62moj.iteye.com/blog/1574135
今日推荐