findlistmodel.java

来自「本设计课题―用JAVA语言设计即时通讯系统是为了更好的满足人们的网上聊天和彻底的」· Java 代码 · 共 49 行

JAVA
49
字号
import java.awt.*;import java.awt.event.*;import javax.swing.*;import javax.swing.border.*;import java.util.Vector;import java.net.*;import java.io.*; //以下扩展DefaultListModel类建立列表public class FindListModel extends DefaultListModel{   	public FindListModel(Vector nickname,Vector sex,Vector place)          { for(int i=0;i<nickname.size();++i){          addElement(new Object[]{nickname.get(i),sex.get(i),place.get(i)});          }          }public  String getName(Object object)  { Object[] array=(Object[])object;  return(String) array[0];  }public String getSex(Object object){ Object[] array=(Object[]) object;  return (String) array[1];  }public String getPlace(Object object){ Object[] array=(Object[])object;   return (String) array[2];}}  class FindListCellRenderer extends JLabel implements ListCellRenderer//以下是处理列表渲染{ private Border lineBorder=BorderFactory.createLineBorder(Color.red,2),           emptyBorder =BorderFactory.createEmptyBorder(2,2,2,2);  public FindListCellRenderer(){     setOpaque(true);     }public Component getListCellRendererComponent(JList list,Object value,int index,                                                boolean isSelected,boolean cellHasFocus)      { FindListModel model=(FindListModel) list.getModel();        setText(model.getName(value)+"  "+model.getSex(value)+"  "+model.getPlace(value));             if(isSelected){setForeground(list.getSelectionForeground());                         setBackground(list.getSelectionBackground());                         }          else { setForeground(list.getForeground());                   setBackground(list.getBackground());}          if(cellHasFocus) setBorder(lineBorder);                else setBorder(emptyBorder);          return this;          }}

⌨️ 快捷键说明

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