当前位置: 移动技术网 > IT编程>开发语言>.net > Flex分页控件

Flex分页控件

2018年10月03日  | 移动技术网IT编程  | 我要评论

北方影院我是谁,幼儿园小制作,看天下电子版

提到分页大家应该都很熟悉了,几乎所有的应用中都会用到。因而完成一个分页在不同的应用中进行复用是必须的,刚写完了一个flex分页的组件,拿来分享一下。如果有什么建议、问题欢迎大家提出。希望可以为flex的开发者们提供一个可靠的分页组件。

                                                                                                   

package utils.page

{

    import flash.events.mouseevent;

   

    import mx.controls.button;

    import mx.controls.label;

   

    //分页组件类

    //作者:孙镜涛

    //日期:2010-01-12

    //描述:本类主要负责对分页相关的按钮以及信息显示的标签进行管理;对数据显示内容进行控制

    public class pagecomponent

    {

       //首页按钮

       private var firstbutton:button;

       //下一页按钮

       private var nextbutton:button;

       //前一页按钮

       private var previousbutton:button;

       //最后页按钮

       private var lastbutton:button;

       //当前页信息显示

       private var curpageinfolbl:label;

       //所有页信息显示

       private var totalpageinfolbl:label;

       //当前页改变时数据处理方法

       private var handledatafun:function;

       //分页数据的处理类

       private var page:pageutils;

      

       //first,next,previous,last:第一页,下一页,上一页,最后页的button

       //curpageinfolbl,totalpageinfolbl:当前页,所有页信息显示的label

       //handledatafun:分页的页码改变后数据的处理函数,该函数符合的签名为:(data:array):void

       //exefun:查询数据的sql,该函数的签名为:(sql:string):array

       //pagenum:每页显示数据条数

       public function pagecomponent(first:button,next:button,previous:button,last:button,curpageinfolbl:label,

                                     totalpageinfolbl:label,handledatafun:function,exefun:function,pagenum:int)

       {

           //分页按钮初始化

           this.firstbutton=first;

           this.nextbutton=next;

           this.previousbutton=previous;

           this.lastbutton=last;

          

           //分页信息显示控件初始化

           this.curpageinfolbl=curpageinfolbl;

           this.totalpageinfolbl=totalpageinfolbl;

          

           //页面改变后数据处理函数

           this.handledatafun=handledatafun;

          

           //分页数据类初始化

           this.page=new pageutils(exefun,pagenum);

          

           //为分页按钮增加相应的事件处理函数

           this.firstbutton.addeventlistener(mouseevent.click,firstbuttonclicked);

           this.nextbutton.addeventlistener(mouseevent.click,nextbuttonclicked);

           this.previousbutton.addeventlistener(mouseevent.click,previousbuttonclicked);

           this.lastbutton.addeventlistener(mouseevent.click,lastbuttonclicked);

       }

      

       //需要分页查询的的sql

       public function initsql(sql:string):void

       {

           this.page.initsqlandinitdataifnecessary(sql);       

           setbuttonstatus();

           setlabelinfo();

           this.handledatafun(page.getpagedata());

       }

 

       //分页按钮被点击时的处理逻辑为:

       //1.设置当前数据的页数

       //2.设置分页控件按钮的状态

       //3.设置分页控件信息显示label的内容

       //4.查询该页数据并执行数据处理函数

      

       //点击第一页时触发的事件

       public function firstbuttonclicked(event:mouseevent):void

       {

           page.setcurrentpage(1);

           setbuttonstatus();

           setlabelinfo();

           this.handledatafun(page.getpagedata());

       }

      

       //点击下一页时触发的事件

       public function nextbuttonclicked(event:mouseevent):void

       {

           if(page.getcurrentpage()<page.getpagecount())

    &n

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网