用java依照google計算頁碼的規則寫的method

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

/**

* 依照google計算頁碼的方法

* 據選擇的頁碼計算出將顯示的起止碼(如﹕上一頁 1 2 3 4 下一頁 ,即1和4是起止碼),計算結果存儲在PageDescription里

* @param selectedPageNo int

*/

private void calculateStart_EndPageNo(int selectedPageNo) {

String log_MM = "calculateStart_EndPageNo";

int log_Index = 0;

log.info(log_CM + log_MM + log_Index++ +log_RM +

"進入calculateStart_EndPageNo方法...");

log.debug(log_CM + log_MM + log_Index++ +log_RM +

"檢查當前選擇的頁碼﹕" + selectedPageNo);

int startPageNo = 1;

int endPageNo = pgDes.getTotalPages();

int halfSize = pgDes.getPageRange() / 2;

if (pgDes.getTotalPages() <= pgDes.getPageRange()) {

endPageNo = pgDes.getTotalPages();

} else if (selectedPageNo <= halfSize) {

endPageNo = pgDes.getPageRange(); //因要去掉下面那功能而加的﹐即一開始就固定其頁碼范圍

// endPageNo = halfSize + selectedPageNo - 1;//暫時不要這個功能

} else {

endPageNo = selectedPageNo + halfSize - 1;

if (endPageNo <= pgDes.getTotalPages()) {

startPageNo = endPageNo - pgDes.getPageRange() + 1;

} else {

startPageNo = pgDes.getTotalPages() - pgDes.getPageRange() + 1;

}

}

if (endPageNo > pgDes.getTotalPages()) {

endPageNo = pgDes.getTotalPages();

}

pgDes.setStartPageNo(startPageNo);

pgDes.setEndPageNo(endPageNo);

log.debug(log_CM + log_MM + log_Index++ +log_RM +

"由計算得出﹕startPageNo=" + startPageNo + " endPageNo=" +

endPageNo);

log.info(log_CM + log_MM + log_Index++ +log_RM +

"正常結束calculateStart_EndPageNo方法.");

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航