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

📄 showpersonlist.java

📁 电话本信息管理,能读取电话本信息,很好用的啊哈哈哈....
💻 JAVA
字号:
import java.util.Enumeration;
import java.util.Vector;

import javax.microedition.lcdui.*;
import javax.microedition.pim.*;


public class showPersonList extends List implements CommandListener {
	

	private final Command selectCommand=new Command("查看",Command.ITEM,1);
	private final Command backCommand=new Command("后退",Command.BACK,1);
	private final Command removeCommand=new Command("删除",Command.SCREEN,3);
	private final Command newCommand=new Command("新建",Command.SCREEN,2);
	private final Command categoryCommand=new Command("分组列表",Command.OK,1);
	private final ContactListDemo midlet;
	private final Displayable displayable;
	private final int listTpye=PIM.CONTACT_LIST;
	private final PIMList list;
	private final Vector itemList=new Vector();
	private final int fieldCode=Contact.FORMATTED_NAME;
	private String currentcategory=PIMList.UNCATEGORIZED;

	public showPersonList(ContactListDemo _midlet,Displayable _displayable,PIMList _list ) throws PIMException {///jsr 75 包 PIN
		super("选择联系人", List.IMPLICIT);
		midlet=_midlet;
		list=_list;
		displayable=_displayable;
		addCommand(backCommand);
		addCommand(newCommand);
		addCommand(categoryCommand);
		setCommandListener(this);
		populateList();
		
		 
	}
     public void populateList() throws PIMException{
    	 deleteAll();
    	 removeCommand(selectCommand);
    	 removeCommand(removeCommand);
    	 itemList.removeAllElements();
//    	 for(Enumeration items=list.items();items.hasMoreElements();){
    	 for(Enumeration items=list.itemsByCategory(currentcategory);items.hasMoreElements();){
    		 PIMItem item=(PIMItem) items.nextElement();
    		 String lable=this.getDisplayedField(item);
    		 if(lable==null){
    			 lable="<Incomplete data>";
    		 }    		 
    		 append(lable, null);
    		 itemList.addElement(item);
    	 }    	 
    	 if(size()>0){
    		 
    		 setSelectCommand(selectCommand);
    		 addCommand(removeCommand);
    	 }
    	 
     }
	
     public String getDisplayedField( PIMItem item)
     {
    	 fixDisplayField(item);
    	 String fieldValue=null;
    	 
    	 if(item.countValues(fieldCode)!=0){
    		 String s=item.getString(fieldCode, 0);
    		 if(s!=null&&s.trim().length()!=0){
    			 fieldValue=s;
    		 }
    	 }
    	 
    	 return fieldValue;
     }
     public void fixDisplayField(PIMItem item)
     {
    	 if(listTpye==PIM.CONTACT_LIST)
    	 {
    		 boolean define=false;
    		 if(item.countValues(fieldCode)!=0){
    			 String s=item.getString(fieldCode, 0);
    			 if(s!=null&&s.trim().length()>0)
    				 {
    				  define=true;
    				 }
    		 }
    		 if(!define)
    		 {
    			 if(item.countValues(Contact.NAME)!=0){
    				 String []a=item.getStringArray(Contact.NAME, 0);
    				 if(a!=null)
    				 {
    					 StringBuffer sb=new StringBuffer();
    					 if(a[Contact.NAME_GIVEN]!=null)
    					 {
    						 sb.append(a[Contact.NAME_GIVEN]);
    					 }
    					 if(a[Contact.NAME_FAMILY]!=null)
    					 {
    						if(sb.length()>0){
    							sb.append("");
    						}
    						sb.append(a[Contact.NAME_FAMILY]);
    					 }
    					 
    					 String s=sb.toString().trim();
    					 if(s.length()>0){
    						 if(item.countValues(fieldCode)==0){
    							 item.addString(fieldCode, Contact.ATTR_NONE, s);
    						 }
    						 else {
    							 item.setString(fieldCode, 0, Contact.ATTR_NONE, s);
    						 }
    					 }
    				 }
    				 
    			 }
    		 }
    	 }
     }
     
     public String getCurrentCategory()
     {
    	 return currentcategory;
     }
	 
     
     public void setCurrentCategory(String category)
     {
    	 currentcategory= category;
     }
	public void commandAction(Command c, Displayable d) {
		  if(c==backCommand){
			  Display.getDisplay(midlet).setCurrent(displayable);
		  }else   if(c==selectCommand){
				  try {
					  PIMItem item=(PIMItem) itemList.elementAt(getSelectedIndex());
					  Displayable sreen=new showContactInfoSreen(midlet,this,list,item);
					  Display.getDisplay(midlet).setCurrent(sreen);
				} catch (Exception e) {
					
				}
			  }
		  else   if(c==removeCommand){
		    	  try {
		    		  PIMItem item=(PIMItem) itemList.elementAt(getSelectedIndex());
		    		  ((ContactList)list).removeContact((Contact)item);/// 
		    		  populateList();//////
				} catch (Exception e) {
					 
				}
		      }
		  else if(c==newCommand){
			  
			  PIMItem item= ((ContactList)list).createContact();
			  item.addString(fieldCode , PIMItem.ATTR_NONE, "");
			  Displayable sreen=new showContactInfoSreen(midlet,this,list,item);
			  Display.getDisplay(midlet).setCurrent(sreen);
		  }
		  else if(c==categoryCommand){
			  
			  Display.getDisplay(midlet).setCurrent(new categorysList(midlet,this,list));
		  }
	}

}



⌨️ 快捷键说明

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