<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    江蘇520

    江蘇520

    常用鏈接

    統計

    最新評論

    我的常用分頁類

    package yourpackage;   
    import java.util.ArrayList;   
      
    /**  
     * 分頁信息  
     * jdk 1.4  
     * 
    http://www.bt285.cn 
       
    http://www.5a520.cn
     
    */
      
    public class PageSet {   
      
        
    private int pageSize_default = 20;                                      /* 默認單頁信息數量 */  
      
        
    private int currentPage_default = 1;                                    /* 默認當前頁 */  
      
        
    private int pageSize = 20;                                              /* 單頁條目 */  
      
        
    private int currentPage = 1;                                            /* 當前頁 */  
      
        
    private int recordCount = 0;                                            /* 信息數量 */  
      
        
    private int pageMax = 1;                                                 /* 總頁數 */  
      
        
    private int startRow = 0;                                               /* 起始列 */  
      
        
    private int endRow = 0;                                                 /* 結束列 */  
      
        
    private boolean isStartRowReckoned = false;                                 /* 起始列是否被計算 */  
      
      
        
    /**  
         * 初始化必有參數  
         * 
    @param currentPage  
         * 
    @param recordCount  
         
    */
      
        
    public void init(int currentPage, int recordCount) {   
            
    this.setCurrentPage(currentPage);   
            
    this.setRecordCount(recordCount);   
    //        this.reckonStartRow();  /* 計算器起始列 */   
    //        this.reckonEndRow();   
        }
       
      
        
    /**  
         * 重新計算 頁面總數 和 當前頁  
         
    */
      
        
    public void reckonAll() {   
            
    this.reckonPageMax();   /* 計算總頁數 */  
            
    this.reckonCurrentPage(); /* 計算當前頁 */  
        }
       
      
        
    /**  
         * 計算當前頁頁碼  
         
    */
      
        
    public void reckonCurrentPage() {   
            currentPage 
    = currentPage <= pageMax ? currentPage : pageMax;   
            currentPage 
    = currentPage > 0 ? currentPage : currentPage_default;    /* 默認處理 */  
            currentPage 
    = Kitchen.makeObjectConver(String.valueOf(currentPage)).getInt(); // 這個轉換要替換成自己的。這個String轉int的規則參見Php手冊。   
        }
       
      
        
    /**  
         * 獲取當前頁頁碼  
         * 
    @return  
         
    */
      
        
    public int getCurrentPage() {   
            
    return currentPage;   
        }
       
      
        
    /**  
         * 設置當前頁頁碼  
         * 
    @param currentPage  
         
    */
      
        
    public void setCurrentPage(int currentPage) {   
            
    this.currentPage = currentPage;   
        }
       
      
        
    /**  
         * 獲取默認起始頁碼  
         * 
    @return  
         
    */
      
        
    public int getCurrentPage_default() {   
            
    return currentPage_default;   
        }
       
      
        
    /**  
         * 設置默認起始頁碼  
         * 
    @param currentPage_default  
         
    */
      
        
    public void setPageCurrent_default(int currentPage_default) {   
            
    this.currentPage_default = currentPage_default;   
        }
       
      
        
    /**  
         * 計算頁面總數  
         
    */
      
        
    public void reckonPageMax() {   
            
    boolean isRemainder = ((this.recordCount % this.pageSize) > 0);   
            pageMax 
    = Kitchen.makeObjectConver(String.valueOf(this.recordCount / this.pageSize)).getInteger().intValue();   
            
    if (isRemainder) {   
                pageMax 
    = pageMax + 1;   
            }
       
        }
       
      
        
    /**  
         * 獲取頁面總數  
         * 
    @return  
         
    */
      
        
    public int getPageMax() {   
            
    return pageMax;   
        }
       
      
        
    /**  
         * 設定頁面總數  
         * 
    @param pageMax  
         
    */
      
        
    public void setPageMax(int pageMax) {   
            
    this.pageMax = pageMax;   
        }
       
      
        
    /**  
         * 獲取單頁顯示條數  
         * 
    @return  
         
    */
      
        
    public int getPageSize() {   
            
    return pageSize;   
        }
       
      
        
    /**  
         * 設置單頁顯示條數  
         * 
    @param pageSize  
         
    */
      
        
    public void setPageSize(int pageSize) {   
            
    this.pageSize = pageSize;   
        }
       
      
        
    /**  
         * 獲取默認頁面顯示信息條數  
         * 
    @return  
         
    */
      
        
    public int getPageSize_default() {   
            
    return pageSize_default;   
        }
       
      
        
    /**  
         * 設置默認頁面顯示信息條數  
         * 
    @param pageSize_default  
         
    */
      
        
    public void setPageSize_default(int pageSize_default) {   
            
    this.pageSize_default = pageSize_default;   
        }
       
      
        
    /**  
         * 設置總記錄數  
         * 
    @return  
         
    */
      
        
    public int getRecordCount() {   
            
    return recordCount;   
        }
       
      
        
    /**  
         * 獲取總記錄數  
         * 
    @param recordCount  
         
    */
      
        
    public void setRecordCount(int recordCount) {   
            
    this.recordCount = recordCount;   
        }
       
      
        
    /**  
         * 計算當前頁起始行行號  
         
    */
      
        
    public void reckonStartRow() {   
            
    this.reckonAll();   
            isStartRowReckoned 
    = true;   
            
    int _startRow = this.pageSize * (this.currentPage - 1);   
            _startRow 
    = _startRow >= 0 ? _startRow : 0;   
            _startRow 
    = Kitchen.makeObjectConver(String.valueOf(_startRow)).getInteger().intValue();   
            
    this.startRow = _startRow;   
        }
       
      
        
    /**  
         * 獲取當前頁起始行行號  
         * 
    @return  
         
    */
      
        
    public int getStartRow() {   
            
    this.reckonStartRow();   
            
    return this.startRow + 1/* attention */  
        }
       
      
    //    public void setStartRow(int startRow) {   
    //        this.startRow = startRow;   
    //    }   
        /**  
         * 計算當前頁結束行行號  
         
    */
      
        
    public void reckonEndRow() {   
            
    if (!isStartRowReckoned) {   
                
    this.reckonStartRow();   
            }
       
            endRow 
    = startRow + this.pageSize;   
            endRow 
    = endRow <= recordCount ? endRow : recordCount;   
            endRow 
    = Kitchen.makeObjectConver(String.valueOf(endRow)).getInteger().intValue();   
        }
       
      
        
    /**  
         * 獲取當前頁結束行行數  
         * 
    @return  
         
    */
      
        
    public int getEndRow() {   
            
    this.reckonEndRow();   
            
    return endRow;   
        }
       
      
    //    public void setEndRow(int endRow) {   
    //        this.endRow = endRow;   
    //    }   
        /**  
         * 獲取第一頁頁碼  
         * 
    @return 1  
         
    */
      
        
    public int getFirstPage() {   
            
    return 1;   
        }
       
      
        
    /**  
         * 獲取前一頁頁碼  
         * 
    @return  
         
    */
      
        
    public int getPrePage() {   
            
    int prePage = this.currentPage - 1;   
            prePage 
    = (prePage >= 1? prePage : 1;   
            
    return prePage;   
        }
       
      
        
    /**  
         * 獲取下一頁頁碼  
         * 
    @return  
         
    */
      
        
    public int getNextPage() {   
            
    int nextPage = this.currentPage + 1;   
            nextPage 
    = (nextPage < this.pageMax) ? nextPage : this.pageMax;   
            
    return nextPage;   
        }
       
      
        
    /**  
         * 獲取最后頁頁碼  
         * 
    @see #getPageMax()   
         * 
    @return  
         
    */
      
        
    public int getLastPage() {   
            
    return this.pageMax;   
        }
       
      
        
    /**  
         * 獲取所有頁面列表  
         * 
    @return  
         
    */
      
        
    public ArrayList getPageList() {   
            
    if (!this.isStartRowReckoned) {   
                
    this.reckonAll();   
            }
       
            ArrayList pageList 
    = new ArrayList();   
            
    for (int i = 1; i <= this.pageMax; i++{   
                pageList.add(String.valueOf(i));   
            }
       
            
    return pageList;   
        }
       
      
        
    /**  
         * 獲取臨近頁面列表  
         * 應急寫的,還有很多需要改善的地方  
         * 
    @param count  
         * 
    @return  
         
    */
      
        
    public ArrayList getPageList(int count) {   
            
    if (!this.isStartRowReckoned) {   
                
    this.reckonAll();   
            }
       
            ArrayList pageList 
    = new ArrayList();   
            count 
    = ((count % 2> 0? count + 1 : count; /* 轉化為偶數 */  
            
    int minPage = this.currentPage - (count / 2);   
            
    int startPage = minPage;   
            
    int endPage = count + startPage;   
            
    int jumper = 0;   
            
    boolean isBreak = true;   
    //        int distance = 0;   
            
    // 雙向逼近   
            do {   
                jumper
    ++;   
                isBreak 
    = true;   
                
    /**  
                 * 向后走 1 位  
                 
    */
      
                
    if (startPage < 1{   
                    startPage
    ++;   
                    
    if (endPage < pageMax) {   
                        endPage
    ++;   
                    }
       
                    isBreak 
    = false;   
                }
       
                
    /**  
                 * 向前走 1 位  
                 
    */
      
                
    if (endPage > pageMax) {   
                    endPage
    --;   
                    
    if (startPage > 1{   
                        startPage
    --;   
                    }
       
                    isBreak 
    = false;   
                }
       
                
    if (jumper > RuntimeConstants.jumper) {   
                    isBreak 
    = true;   
                }
       
            }
     while (!isBreak);   
            
    for (int i = startPage; i <= endPage; i++{   
                pageList.add(Integer.toString(i));   
            }
       
            
    return pageList;   
        }
       
      
        
    /**  
         * 對比頁面索引和當前頁并顯示相應內容  
         * 
    @param index  
         * 
    @param show  
         * 
    @param elseShow  
         * 
    @return  
         
    */
      
        
    public String compare(int index, String show, String elseShow) {   
            
    if (this.currentPage != index) {   
                show 
    = elseShow;   
            }
       
            
    return show;   
        }
       
    }
      

    http://www.feng123.com 這里有例子

    posted on 2009-05-13 16:54 江蘇520 閱讀(1638) 評論(0)  編輯  收藏

    主站蜘蛛池模板: 国产成人自产拍免费视频| 亚洲区不卡顿区在线观看| 日本一区二区免费看| 一级女性全黄久久生活片免费 | 永久免费av无码网站韩国毛片 | 久久亚洲精品无码| 亚洲午夜精品久久久久久浪潮 | 亚洲中文字幕无码久久| 亚洲美免无码中文字幕在线| 色播精品免费小视频| 免费萌白酱国产一区二区三区| 粉色视频在线观看www免费| 亚洲最大的成人网| 亚洲一区二区三区四区视频| 亚洲午夜精品久久久久久人妖| 亚洲精品制服丝袜四区| 在线亚洲精品福利网址导航| 亚洲AV无码一区二区三区国产| 日韩视频在线免费观看| 最近最新中文字幕完整版免费高清 | 久久国产乱子伦精品免费看| 国产精品免费观看视频| 青青草国产免费国产是公开| 国产午夜亚洲精品不卡免下载| 亚洲av片在线观看| 美女黄频免费网站| 美女被免费网站视频在线| 免费国产黄网站在线观看动图 | 久久亚洲精品无码观看不卡| 亚洲人成网站18禁止一区| 亚洲国产日韩在线观频| 久久影视国产亚洲| 在线亚洲午夜理论AV大片| 亚洲熟妇无码乱子AV电影| 亚洲精品国产精品乱码视色| 亚洲av一综合av一区| 四虎国产精品免费久久影院| 免费中文字幕在线观看| 亚洲国产婷婷香蕉久久久久久| 国产亚洲成人在线播放va| 亚洲免费人成在线视频观看|