📄 mylist.java
字号:
/*
* MyList.java
*
* Created on 2006年8月13日, 上午8:13
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package mylist;
import com.sun.org.apache.xpath.internal.axes.PathComponent;
import java.awt.Color;
import java.awt.Component;
import java.net.URL;
import javax.swing.BorderFactory;
import javax.swing.DefaultListModel;
import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.ListCellRenderer;
import javax.swing.border.Border;
/**
*自己定制的JList
* @author 幽梦还乡
*/
public class MyList extends JList {
public IconListItemRenderer iconList = null;
public DefaultListModel listModel = null;
public IconListItem iconListItem = null;
private URL url = null;
private ImageIcon image = null;
private String name;
public MyList() {
}
public void setIcon(String Path,String name){
iconList = new IconListItemRenderer();
listModel = new DefaultListModel();
iconListItem = new IconListItem();
setCellRenderer(iconList);
setModel(listModel);
}
}
class IconListItem{
ImageIcon imageIcon;
String text;
public Icon getIcon() {
return imageIcon;
}
public String getText() {
return text;
}
public void setIcon(ImageIcon imageIcon){
this.imageIcon = imageIcon;
}
public void setText(String text){
this.text = text;
}
}
class IconListItemRenderer extends JLabel implements ListCellRenderer{
private Border
selectedBorder = BorderFactory.createLineBorder(Color.YELLOW,2),
emptyBorder = BorderFactory.createEmptyBorder(1,1,1,1);
public Component getListCellRendererComponent(JList list,
Object value, int index,
boolean isSelected, boolean cellHasFocus) {
IconListItem item = (IconListItem)value;
this.setIcon(item.getIcon());
this.setText(item.getText());
if (isSelected){
setBorder (selectedBorder);
}else{
setBorder(emptyBorder);
}
return this;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -