📄 listform.java
字号:
/*
* ListForm.java
* 分页显示所有产品清单
* Created on 2004年2月7日, 下午9:33
*/
import javax.microedition.lcdui.*;
import java.util.*;
/**
*
* @author wenyy
* @version
*/
public class ListForm extends Form{
//菜单命令对象
public static Command nextPageCmd = new Command("下一页", Command.SCREEN,1);
public static Command prevPageCmd = new Command("上一页", Command.SCREEN,2);
public static Command exitCmd = new Command("返回", Command.EXIT,1);
//显示产品信息的StringItem 对象
private StringItem [] strItem;
private int totalPage ,curPage ; //记录总页数与当前页码
private int itemPerPage;
private ProductLoader loader;
//构造器
//参数:l 为存有产品清单的ProductLoader 对象
//参数:ipp 表示每页显示的产品数量
public ListForm( ProductLoader l,int ipp) {
super("产品清单");
itemPerPage = ipp;
loader = l;
curPage=1;
strItem = new StringItem[itemPerPage]; //每页显示6个产品
for(int i=0;i< itemPerPage;i++) { //在界面上添加所有产品显示对象
strItem[i]=new StringItem("产品"+(i+1)," ");
strItem[i].setLayout(Item.LAYOUT_NEWLINE_AFTER);//设置布局方式
append(strItem[i]);
}
totalPage = loader.size()/ itemPerPage;
totalPage += (loader.size() % itemPerPage != 0)? 1:0;
//添加菜单命令
addCommand(exitCmd);
addCommand(nextPageCmd);
addCommand(prevPageCmd);
//修改界面显示信息
showCurPage( ); //显示当前页
}
public void nextPage( ) {
if(curPage * itemPerPage >= loader.size()) //已经显示到最后一页
return;
curPage ++;
showCurPage();
}
public void prevPage( ) {
if(curPage ==1) //已经显示第一页
return;
curPage --;
showCurPage( );
}
//显示当前页
public void showCurPage() {
for(int i=0;i<6;i++)
strItem[i].setText("N/A");
for(int i= 0; i<6 && (curPage-1)* itemPerPage+i <loader.size(); i++) {
strItem[i].setText((String)loader.arrayLines.elementAt((curPage-1)* itemPerPage +i));
}
setTitle("产品清单 "+ curPage +"页/"+ totalPage +"页");
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -