<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 閱讀(1642) 評論(0)  編輯  收藏

    主站蜘蛛池模板: 91精品全国免费观看青青| 成人无遮挡毛片免费看| 亚洲国产精品ⅴa在线观看| 狠狠色伊人亚洲综合成人| 在线日韩av永久免费观看| 成人福利免费视频| 男女午夜24式免费视频| 大片免费观看92在线视频线视频| 日韩亚洲国产综合高清| 亚洲日本一区二区| 亚洲国产成人一区二区三区| av在线亚洲欧洲日产一区二区| 成人免费一区二区三区在线观看| 亚洲一区二区免费视频| 久久国产免费一区二区三区| 中国国产高清免费av片| 亚洲精品视频免费| 免费的黄色的网站| 美女黄频视频大全免费的| 亚洲精品女同中文字幕| 亚洲综合色一区二区三区| 亚洲综合丁香婷婷六月香| 亚洲国产成人久久三区| 亚洲精品美女在线观看| 亚洲黄色中文字幕| 亚洲精品一卡2卡3卡三卡四卡| 亚洲三级电影网站| 在线电影你懂的亚洲| 久久亚洲精品中文字幕| 日韩亚洲Av人人夜夜澡人人爽| 亚洲国产天堂久久综合网站 | 亚洲一区二区三区写真 | 久草视频在线免费| 亚洲日本在线免费观看| 亚洲黄色免费网站| 成人免费视频77777| 成人毛片视频免费网站观看| 午夜爱爱免费视频| 国产又黄又爽又刺激的免费网址 | 亚洲精品天堂在线观看| 亚洲性色精品一区二区在线|