1.
成都創新互聯公司網站建設公司是一家服務多年做網站建設策劃設計制作的公司,為廣大用戶提供了成都做網站、網站設計,成都網站設計,廣告投放平臺,成都做網站選成都創新互聯公司,貼合企業需求,高性價比,滿足客戶不同層次的需求一站式服務歡迎致電。
static void commodityMenu(){
System.out.println("Select: "+"\n"+"|Commodity|"+"|Price|"+""+"|SerieNo|");
int itemPerPage = 2;
for (int i = 0; i commodity.length ; i++) {
System.out.print((i + 1) + ":");
for (int j = 0; j commodity[i].length; j++) {
System.out.print(commodity[i][j] + "\t\t");
}
if(i%itemPerPage==1){
System.out.println();
System.out.println("----------------------------------");
System.out.println("*: 下一頁");
System.out.println("#: 返回");
try{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String input = br.readLine();
if(input.equals("*")){
continue;
}else if(input.equals("#")){
break;
}
}catch(IOException ioe){
}
}
System.out.println();
}
}
2. 對齊可以通過預先定義一個固定長度的空格字符串,然后再用 string.replace("")這個方法替換相應的字符
3. 控制臺顯示交互界面用來學習還可以,真正做的時候不會這么做的。如果做桌面系統,你可以看一下Swing的教程,或者看一下如何用JSP生成html。學習java基礎我推薦你個網站
分頁的一般思想:
1.記錄總數
2.每頁記錄數
3.頁數(可通過前兩個條件算出來,你應該會的吧)
然后在頁面控制好當前頁的頁碼去后臺拿你想要的數據
以上純是思路,樓主可以參考一下,如果你想要代碼,你自己去網上搜,這種例子到處都是,我就不在這里現眼了。呵。。。
//改編的,CopyOfImageViewer.java?打開一個有圖片的文件夾就可瀏覽了。
//MP3播放相關庫到:;nbsp;下載
//將下載到的zip文件里的?jl1.0.1.jar?復制到?JDK目錄下的?jre/lib/ext/?目錄里即可.
//將?源代碼?main?方法里的?playMp3("d:\\bad.mp3");改成自己的地址,換種方法BMP是可以支持的,這里不行暫不討論。
import?java.awt.*;
import?java.awt.event.*;
import?java.io.*;
import?javax.swing.*;
import?javazoom.jl.player.Player;
public?class?CopyOfImageViewer?implements?ActionListener,Runnable?{
JPanel?bts;
JLabel?pl;
JScrollPane?jsp;
JButton?cf,start,next,prev,stop;
JFrame?f;
JFileChooser?fc;
File?[]?sf;
int?index;
Thread?auto;
boolean?autoFlag;
int?delay=5*1000;
//這里就是GUI布局
CopyOfImageViewer(){
pl=new?JLabel();
pl.setHorizontalAlignment(JLabel.CENTER);
jsp=new?JScrollPane(pl);
start=new?JButton("start");
next=new?JButton("");
prev=new?JButton("");
stop=new?JButton("stop");
bts=new?JPanel(new?FlowLayout(FlowLayout.CENTER));
bts.add(start);
bts.add(prev);
bts.add(next);
bts.add(stop);
cf=new?JButton("Select?a?picture?folder");
fc=new?JFileChooser();
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
f=new?JFrame();
f.setDefaultCloseOperation(3);
f.getContentPane().add(cf,"North");
f.getContentPane().add(jsp,"Center");
f.getContentPane().add(bts,"South");
f.setSize(400,300);
f.setLocationRelativeTo(null);
f.setVisible(true);
//給按鈕加入事件偵聽器
start.addActionListener(this);
next.addActionListener(this);
prev.addActionListener(this);
stop.addActionListener(this);
cf.addActionListener(this);
auto=new?Thread(this);
auto.start();
}
public?static?void?main(String[]?args)?{
try{
UIManager.setLookAndFeel("com.sun.java.swing.plaf.nimbus.NimbusLookAndFeel");
}catch(Exception?e){
try{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch(Exception?e2){}
}
new?CopyOfImageViewer();
playMp3("d:\\bad.mp3");
}
//簡單MP3播放
private?static?void?playMp3(String?file){
try{
Player?p?=?new?Player(new?FileInputStream(file));
p.play();
}catch(Exception?e){}
}
//處理各按鍵事件
public?void?actionPerformed(ActionEvent?e)?{
Object?src=e.getSource();
if(src==cf){
int?o=fc.showOpenDialog(f);
if(o==JFileChooser.APPROVE_OPTION){
sf=fc.getSelectedFile().listFiles(new?FilenameFilter(){
//合法的文件后綴
String[]?suf={".PNG",".GIF",".JPG",};
public?boolean?accept(File?dir,?String?name)?{
name=name.toUpperCase();
for(int?i=0;?isuf.length;?i++)
if(name.endsWith(suf[i]))return?true;
return?false;
}
});
if(sf.length0){
index=0;
showPic();
}
}
}
if(sf==null||sf.length==0)return;
if(src==start)startB();
else?if(src==stop)stopB();
else?if(src==next)next();
else?if(src==prev)prev();
}
void?prev(){
index=--index0?sf.length-1:index;
showPic();
}
void?next(){
index=++indexsf.length-1?0:index;
showPic();
}
public?void?run(){
while(true){
if(sf!=null??sf.length0??autoFlag){
try?{Thread.sleep(delay);}?catch?(Exception?e)?{}
next();
}
try?{Thread.sleep(100);}?catch?(Exception?e)?{}
}
}
private?void?stopB()?{
autoFlag=false;
}
private?void?startB()?{
autoFlag=true;
}
//顯示圖片
private?void?showPic()?{
if(sf==null?||?sf.length==0)return;
pl.setIcon(new?ImageIcon(sf[index].getAbsolutePath()));
System.out.println(sf[index].getAbsolutePath());
}
}
這個要配合數據庫的分頁的,前臺異步發送請求,后臺根據你的參數,如當前頁,是下一頁還是什么的,然后傳數據到前臺。
package dl.wsxx.base;
public class Pager {
private int totalRows; // 總行數
private int pageSize; // 每頁顯示的行數
private int currentPage; // 當前頁號
private int totalPages; // 總頁數
private int startRow; // 當前頁在數據庫中的起始行
private int pageStartRow; // 當前頁開始行
private int pageEndRow; // 當前頁結束行
private int hasNextPage; // 下一頁存在標識[0:不存在,1:存在]
private int hasPreviousPage; // 前一頁存在標識[0:不存在,1:存在]
public Pager() {
}
public Pager(int _totalRows,int _pageSize) {
pageSize = _pageSize;
totalRows = _totalRows;
totalPages = totalRows / pageSize;
int mod = totalRows % pageSize;
if (mod 0) {
totalPages++;
}
currentPage = 1;
startRow = 0;
}
public int getStartRow() {
return startRow;
}
public int getpageStartRow() {
return pageStartRow;
}
public int getpageEndRow() {
return pageEndRow;
}
public int getTotalPages() {
return totalPages;
}
public int getCurrentPage() {
return currentPage;
}
public int getPageSize() {
return pageSize;
}
public int getHasNextPage() {
return hasNextPage;
}
public int getHasPreviousPage() {
return hasPreviousPage;
}
public void setTotalRows(int totalRows) {
this.totalRows = totalRows;
}
public void setStartRow(int startRow) {
this.startRow = startRow;
}
public void setPageStartRow(int pageStartRow) {
this.pageStartRow = pageStartRow;
}
public void setPageEndRow(int pageEndRow) {
this.pageEndRow = pageEndRow;
}
public void setTotalPages(int totalPages) {
this.totalPages = totalPages;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public void setHasNextPage(int hasNextPage) {
this.hasNextPage = hasNextPage;
}
public void setHasPreviousPage(int hasPreviousPage) {
this.hasPreviousPage = hasPreviousPage;
}
public int getTotalRows() {
return totalRows;
}
public void first() {
currentPage = 1;
startRow = 0;
pageStartRow = startRow + 1;
this.hasFlagSet(currentPage, totalPages);
if (this.hasNextPage == 0) {
pageEndRow = totalRows;
} else {
pageEndRow = startRow + pageSize;
}
}
public void previous() {
if (currentPage == 1) {
return;
}
currentPage--;
startRow = (currentPage - 1) * pageSize;
pageStartRow = startRow + 1;
this.hasFlagSet(currentPage, totalPages);
if (this.hasNextPage == 0) {
pageEndRow = totalRows;
} else {
pageEndRow = startRow + pageSize;
}
}
public void next() {
if (currentPage totalPages) {
currentPage++;
}
startRow = (currentPage - 1) * pageSize;
pageStartRow = startRow + 1;
this.hasFlagSet(currentPage, totalPages);
if (this.hasNextPage == 0) {
pageEndRow = totalRows;
} else {
pageEndRow = startRow + pageSize;
}
}
public void last() {
currentPage = totalPages;
startRow = (currentPage - 1) * pageSize;
pageStartRow = startRow + 1;
this.hasFlagSet(currentPage, totalPages);
if (this.hasNextPage == 0) {
pageEndRow = totalRows;
} else {
pageEndRow = startRow + pageSize;
}
}
public void refresh(int _currentPage) {
currentPage = _currentPage;
if (currentPage totalPages) {
last();
}
this.hasFlagSet(currentPage, totalPages);
}
private void hasFlagSet(int currentPage, int totalPages) {
if (currentPage == totalPages) {
if (currentPage == 1) {
this.hasPreviousPage = 0;
this.hasNextPage = 0;
} else {
this.hasPreviousPage = 1;
this.hasNextPage = 0;
}
} else {
if (currentPage == 1) {
this.hasPreviousPage = 0;
this.hasNextPage = 1;
} else {
this.hasPreviousPage = 1;
this.hasNextPage = 1;
}
}
}
}
這是我的工程里的分頁核心代碼,希望對你有用,還有ssh分頁文檔,可以參照研究一下。
讀取你數據庫的所有記錄,這是總行數,然后你規定一下沒頁顯示幾條記錄,然后還要記錄一下當前的頁數!
比如現在一共是30記錄,你頁顯示7條,那么就是5頁。(30+7-1)/7=5,你剛進來的時候肯定是第一頁,那么就把1傳進來,第一頁就是顯示第1~第7條記錄,點下一頁傳2進來,第二頁現實低第8~14條記錄!怎么去記錄就要看你怎么操作了,如果你是用SQL語句的話就幫不了你了,因為不知道你用的什么數據庫!如果在集合里去的話,你可以根據傳入的參數來算出本頁的開始記錄數和結束的記錄數,開始是:當前頁*每頁記錄數-沒頁記錄數,結束就是:當前頁*沒也記錄數-1.因為集合的下標是從0開始的,所以要-1.
文章名稱:JAVA翻頁功能代碼,翻頁的代碼
當前URL:http://vcdvsql.cn/article34/heodpe.html
成都網站建設公司_創新互聯,為您提供網站維護、用戶體驗、移動網站建設、定制網站、關鍵詞優化、定制開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯