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

📄 mylistcellrenderer.java

📁 java程序设计导论(daniel liang著) 所有偶数课后习题答案
💻 JAVA
字号:
import java.awt.*;import javax.swing.*;import javax.swing.border.*;public class MyListCellRenderer implements ListCellRenderer {  JPanel listCellPanel = new JPanel();  ImageViewer imageViewer = new ImageViewer();  JLabel jlbl = new JLabel(" ", JLabel.LEFT);  Border lineBorder =    BorderFactory.createLineBorder(Color.black, 1);  Border emptyBorder =    BorderFactory.createEmptyBorder(2, 2, 2, 2);  public MyListCellRenderer() {    listCellPanel.setOpaque(true);    jlbl.setPreferredSize(new Dimension(100, 60));    listCellPanel.setLayout(new BorderLayout(10, 5));    listCellPanel.add(imageViewer, BorderLayout.CENTER);    listCellPanel.add(jlbl, BorderLayout.EAST);  }  /** Implement this method in ListCellRenderer */  public Component getListCellRendererComponent    (JList list, Object value, int index, boolean isSelected,      boolean cellHasFocus) {    Object[] pair = (Object[])value; // Cast value into an array    imageViewer.setImage((Image)pair[0]);    jlbl.setText(pair[1].toString());    if (isSelected) {      listCellPanel.setForeground(list.getSelectionForeground());      listCellPanel.setBackground(list.getSelectionBackground());    }    else {      listCellPanel.setForeground(list.getForeground());      listCellPanel.setBackground(list.getBackground());    }    listCellPanel.setBorder(cellHasFocus ? lineBorder : emptyBorder);    return listCellPanel;  }}

⌨️ 快捷键说明

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