2013-05-15 44 views
0

当双击单元格JList时,如何更改颜色? 有没有办法在DefaultListCellRenderer内添加MouseListener在getListCellRendererComponent中双击时更改颜色

public class Renderer extends DefaultListCellRenderer{ 

@Override 
    public Component getListCellRendererComponent(JList list, Object value, int index,boolean isSelected, boolean cellHasFocus) 
    { 
     Component c = super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); 
     if(isSelected){ 
      c.setBackground(Color.ORANGE); 
      c.setForeground(Color.BLACK); 
     } 
     return c; 
    } 
} 

回答

2

我最近有类似的情况,我想双击表条目并将它们添加到列表中。技巧是:

  • 在表中添加一个布尔值来表示'已添加到列表'。
  • 双击(将列添加到列表&)将该值设置为true。
  • 渲染时,检查布尔值并决定如何渲染它。