⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 phonelist.java

📁 J2ME源代码
💻 JAVA
字号:
package view;

import java.util.Vector;

import javax.microedition.lcdui.Command;
import javax.microedition.lcdui.CommandListener;
import javax.microedition.lcdui.Displayable;
import javax.microedition.lcdui.Image;
import javax.microedition.lcdui.List;

import model.PhoneItem;
import util.UIController;

public class PhoneList extends List{
	private UIController controller;
	private Command EXIT_COMMAND;
	private Command ADD_COMMAND;
	private Command EDIT_COMMAND;
	private Command VIEW_COMMAND;
	private Command DELETE_COMMAND;
	private Command ABOUT_COMMAND;
	
	private Vector items;
	private Image icon,icon1;
	
	
	public PhoneList(String title,UIController control,Vector vec){
	 	super(title,List.IMPLICIT);
    	//load image
    	try{
    	    icon=Image.createImage("/pic/tu5.jpg");
    	    icon1=Image.createImage("/pic/tu6.jpg");
    	}catch(java.io.IOException e){
    	    icon=null;
    	    icon1=null;
    	    System.out.println("load image error");
    	}
    	controller=control;
    	this.setCommandListener(new PhoneListListener());
    	this.items=vec;
    	
    	EXIT_COMMAND=new Command("退出",Command.EXIT,1);
    	VIEW_COMMAND=new Command("查看",Command.ITEM,2);
    	ADD_COMMAND=new Command("添加",Command.ITEM,2);
    	EDIT_COMMAND=new Command("编辑",Command.ITEM,2);
    	DELETE_COMMAND=new Command("删除",Command.ITEM,2);
    	ABOUT_COMMAND=new Command("关于",Command.ITEM,2);
    	
    	this.addCommand(EXIT_COMMAND);
    	this.addCommand(VIEW_COMMAND);
    	this.addCommand(ADD_COMMAND);
    	this.addCommand(EDIT_COMMAND);
    	this.addCommand(DELETE_COMMAND);
    	this.addCommand(ABOUT_COMMAND);
    	
    	if(vec!=null&&vec.size()>0){
    		PhoneItem phone=null;
    		for(int i=0;i<vec.size();i++){
    			phone=(PhoneItem)vec.elementAt(i);
    			if(i%2==0){
    			this.append(phone.getName(),icon);
    			}
    			else{this.append(phone.getName(),icon1);}
    		}
    	}
	}
    	public void refresh(Vector vec){ 
    		this.deleteAll();
    		this.items=vec;
    		if(vec!=null&&vec.size()>0){
    			PhoneItem phone=null;
    			for(int i=0;i<vec.size();i++){
    				phone=(PhoneItem)vec.elementAt(i);
    				//this.append(phone.getName(), icon);
    				if(i%2==0){
    	    			this.append(phone.getName(),icon);
    	    			}
    	    			else{this.append(phone.getName(),icon1);}
    			}
    		}
    	}
    	
    	public void add(PhoneItem phone){
    		this.append(phone.getName(), icon);
    	}
	
	
	//监听器
	private class PhoneListListener implements CommandListener{
		public void commandAction(Command command,Displayable disp){
			if(command==EXIT_COMMAND){
				controller.handleEvent(UIController.EventID.EVENT_EXIT,null);
			}else if(command==VIEW_COMMAND){
				int ind=((List)disp).getSelectedIndex();
				if(ind==-1)
					return;
				Object[] args = {items.elementAt(ind)};
				controller.handleEvent(UIController.EventID.EVENT_VIEW_DETAIL,args);
			}else if(command==ADD_COMMAND){
				controller.handleEvent(UIController.EventID.EVENT_NEW_RECORD, null);
			}
			//编辑
			else if(command==EDIT_COMMAND){
	            int ind=((List)disp).getSelectedIndex();
	            if(ind==-1)
	                return;
				Object[] args={items.elementAt(ind)};    		
				controller.handleEvent(UIController.EventID.EVENT_EDIT,args);
			}else if(command==DELETE_COMMAND){
	            int ind=((List)disp).getSelectedIndex();
	            if(ind==-1)
	                return;
				Object[] args={items.elementAt(ind)};
				controller.handleEvent(UIController.EventID.EVENT_DELETE,args);
			}else if(command==ABOUT_COMMAND){
			    controller.handleEvent(UIController.EventID.EVENT_ABOUT,null);
			}
		}
	}

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -