Olá galera,
Estou aprendendo a criação de listas customizadas em um Jlist usando o método setCellRenderer, porém quando vou setar meus valores na lista eles ficam pequenos e não consigo fazer com que fiquem maiores e se retiro a linha que definem as bordas os valores simplesmente somem. Olhem meu código da classe Adaptadora da lista:
[code]class EntradaCellRenderer extends JPanel implements ListCellRenderer {
private static final Color HIGHLIGHT_COLOR = new Color(0, 0, 128);
public Component getListCellRendererComponent(JList list, Object value,
int index, boolean isSelected, boolean cellHasFocus) {
Entradas entry = (Entradas) value;
setBorder(new EmptyBorder(5, 5, 5, 5));
SpringLayout sl_contentPane = new SpringLayout();
setLayout(sl_contentPane);
JLabel lblCdigo = new JLabel();
sl_contentPane.putConstraint(SpringLayout.NORTH, lblCdigo, 10, SpringLayout.NORTH, this);
sl_contentPane.putConstraint(SpringLayout.WEST, lblCdigo, 10, SpringLayout.WEST, this);
lblCdigo.setText(entry.getCodigo());
add(lblCdigo);
JLabel lblEstrutura = new JLabel("Descrição");
sl_contentPane.putConstraint(SpringLayout.NORTH, lblEstrutura, 6, SpringLayout.SOUTH, lblCdigo);
sl_contentPane.putConstraint(SpringLayout.WEST, lblEstrutura, 0, SpringLayout.WEST, lblCdigo);
add(lblEstrutura);
BufferedImage buttonIcon = null;
try{
buttonIcon = ImageIO.read(new File("D:/Programacao/pdf_icon.png"));
}catch(Exception e){
//null
}
JButton btnNewButton = new JButton(new ImageIcon(buttonIcon));
sl_contentPane.putConstraint(SpringLayout.NORTH, btnNewButton, 0, SpringLayout.NORTH, lblCdigo);
sl_contentPane.putConstraint(SpringLayout.WEST, btnNewButton, -33, SpringLayout.EAST, this);
sl_contentPane.putConstraint(SpringLayout.EAST, btnNewButton, 0, SpringLayout.EAST, this);
add(btnNewButton);
JLabel lblMp = new JLabel("MP");
sl_contentPane.putConstraint(SpringLayout.NORTH, lblMp, 0, SpringLayout.NORTH, lblCdigo);
sl_contentPane.putConstraint(SpringLayout.EAST, lblMp, -45, SpringLayout.WEST, btnNewButton);
add(lblMp);
if (isSelected) {
setBackground(HIGHLIGHT_COLOR);
setForeground(Color.white);
} else {
setBackground(Color.white);
setForeground(Color.black);
}
return this;
}
}[/code]
Grato.