近段时间在做一个分页,嫌着在多个地方都用到了分页,就干脆封装好一个,现共享出来,以供大家批评指责
其使用方法见最后面
package code.util
{
/**
* AS3分页
* @author Etwo
* @version 1.0
*/
public class Page
{
/*
* 分页要素:
* 1、首页 firstPage
* 2、最后一页 lastPage
* 3、页总数 pageTotalCount
* 4、总共显示的数据记录 dataTotalCount
* 5、每页显示的数据记录 dataPerCount
* 6、当前页 curPage
* 7、当前显示的数据记录 curData
* 8、当前实际页数 curRealPage
* 9、保存页数的文本框 txtPage
*/
/**
* 1、首页 firstPage
* @default
*/
private var _firstPage:uint;
/**
* 2、最后一页 lastPage
* @default
*/
private var _lastPage:uint;
/**
* 3、页总数 pageTotalCount
* @default
*/
private var _pageTotalCount:uint;
/**
* 4、总共显示的数据记录 dataTotalCount
* @default
*/
private var _dataTotalCount:uint;
/**
* 5、每页显示的数据记录 dataPerCount
* @default
*/
private var _dataPerCount:uint;
/**
* 6、当前页 curPage
* @default
*/
private var _curPage:uint;
/**
* 7、当前显示的数据记录 curData
* @default
*/
private var _curData:uint;
/**
* 8、当前实际页数 curRealPage
* @default
*/
private var _curRealPage:uint;
/**
* 9、保存页数的文本框
* @default
*/
private var _txtPage:String;
/**
* 上一页
* @return
*/
public function get previous():uint
{
return (this.curPage > 1) ? this.curPage - 1 : 1;
}
/**
* 下一页
* @return
*/
public function get next():uint
{
return (this.curPage < uint(this.pageTotalCount)) ? this.curPage + 1 : uint(this.pageTotalCount);
}
/**
* 判断是否是首页
* @return
*/
public function isFirst():Boolean
{
return (this.curPage == 1) ? true : false;
}
/**
* 判断是否是最后一页
* @return
*/
public function isLast():Boolean
{
return (this.curPage == this.pageTotalCount) ? true : false;
}
/**
* 3、页总数 pageTotalCount
*/
public function get pageTotalCount():uint
{
this._pageTotalCount = uint(Math.ceil(Number(this.dataTotalCount) / Number(this.dataPerCount)));
return _pageTotalCount;
}
/**
* 4、总共显示的数据记录 dataTotalCount
*/
public function get dataTotalCount():uint
{
return _dataTotalCount;
}
/**
* @private
*/
public function set dataTotalCount(value:uint):void
{
_dataTotalCount = value;
}
/**
* 5、每页显示的数据记录 pagePerCount
*/
public function get dataPerCount():uint
{
return _dataPerCount;
}
/**
* @private
*/
public function set dataPerCount(value:uint):void
{
this._dataPerCount = value;
}
/**
* 6、当前页 curPage
*/
public function get curPage():uint
{
if (_curPage <= 0)
{
_curPage = 1;
}
else if (_curPage >= this.pageTotalCount)
{
_curPage = this.pageTotalCount;
}
return _curPage;
}
/**
* @private
*/
public function set curPage(value:uint):void
{
_curPage = value;
}
/**
* 1、首页 firstPage
*/
public function get firstPage():uint
{
this._firstPage = 1;
return _firstPage;
}
/**
* 2、最后一页 lastPage
*/
public function get lastPage():uint
{
this._lastPage = uint(this.pageTotalCount);
return _lastPage;
}
/**
* 7、当前显示的数据记录 curData
* @default
*/
public function get curData():uint
{
if (isLast() == true)
{
if (dataTotalCount <= dataPerCount)
this._curData = dataTotalCount;
else
this._curData = dataTotalCount - ((pageTotalCount - 1) * dataPerCount);
}
else
{
this._curData = dataPerCount;
}
return _curData;
}
/**
* 8、当前实际页数 curRealPage
* @default
*/
public function get curRealPage():uint
{
return _curRealPage;
}
/**
* @private
*/
public function set curRealPage(value:uint):void
{
_curRealPage = value;
}
/**
* 9、保存页数的文本框
* @default
*/
public function get txtPage():String
{
_txtPage = curPage + _txtPage + pageTotalCount
return _txtPage;
}
/**
* @private
*/
public function set txtPage(value:String):void
{
_txtPage = value;
}
}
}
使用方法例子:
page.curPage = 1;//设置当前页
page.curRealPage = 1;//设置当前实际的页数,此项必须用到的时候方可使用
page.dataTotalCount = 30;//设置总共显示的数据记录
page.dataPerCount = 10;//每页显示的数据
addPageMenu(page.curData);//传入当前页的数据
page.txtPage = "/";//设置页码分隔符
display.text = page.txtPage;//显示页码
//上一页
private function previous(e:MouseEvent):void
{
page.curPage = page.previous;
addPageMenu(page.curData);
}
//下一页
private function next(e:MouseEvent):void
{
page.curPage = page.next;
addPageMenu(page.curData);
}
分享到:
相关推荐
java swing表格分页控件封装,有利于在开发中节约时间
自己写的一个js分页控件.已经封装,可以直接使用. 适合各种用途的分页控制. 如果界面不够美观,只需要修改css即可.
跟我上面的java底层简易封装配套的。有需要的也可以学习下。
有感于制作网站时,常常要求有分页功能。为了避免写重复又不复杂的代码,特编写的这个关于sqlserver 的java代码封装
分页封装
1、后台管理系统用到的表格、分页很多,所以不能每个页面都写一次,通过组件通讯方式封装 2、项目选型:vite + ts + vue3 3、全篇采用语法糖形式 4、通过带着读者手写简化版 封装技巧,了解 核心原理。全文极简备注...
分页封装类
此Demo使用java编写,可以封装成jar方便各种项目分页功能,只需传参即可。简单来说,本人就是吧分页的功能独立成一个项目,主要类是PageUtil.java 此类封装分页逻辑,页面自动生成分页区,数据显示条数可自动以,...
主要介绍了php封装的page分页类,结合完整实例形式分析了php数值运算与字符串操作实现分页功能的相关技巧,需要的朋友可以参考下。
HibernateUtil 分页 增删改查 封装 HibernateUtil 分页 增删改查 封装 HibernateUtil 分页 增删改查 封装
还有部分代码没有了,主要在Vo定义一个pager 在student类里继承了basic类
java封装好的分页代码
MyFaces Oracle大数据表分页封装.docx
php实现数据分页封装,适合新手更好理解分页流程。看完之后你会觉得分页实现真tm简单
自定义的jsp分页,封装了列表数据类及分页导航
简单易懂的js分页,已经分装好,通俗易懂
对分页进行了封装,PageUtil.java的分页工具类,自己写了一个dome。
自己封装的gwt分页控件,操作简单,只要将属性列及操作列、数据查询语句传进去即可。另附说明
封装了一个服务器端的分页控件,此控件主要是减少了多余的序列化代码,而且还可以显示不同的数字分页,也可以显示文字分页。
asp.net和分页控件封装后的分页组件,dll 今天发布的是升级的版本,解决之前不能按需加载的bug, 现在可以设置获取的字段,是分页更加方便快捷,也谢谢分页控件大哥提供的控件,才能让我进行整合的。多谢。。 多多...