Salve a tutti. Sono nuovo in questo forum. L'ho consultato qualche volta e sono riuscito a risolvere diversi problemi. Ora però ne ho uno nuovo. Ho un JFrame con all'interno una lista. Le componenti (celle) della lista sono dei pannelli con un jlabel e due jbutton (un pò come il programma add\remove di Windows XP). Per ottenere le singole celle ho implementato in un jpanel la classe ListCellRender. Solo che quando visualizzo la finestra con la lista, è come se i bottoni fossero bloccati. Ecco il codice del programmma (con gli elementi precaricati):

classe Main
codice:
public class Main {
    public static void main (String args[]) {
        Finestra f = new Finestra();
        f.pack();
        f.setVisible(true);
    }
}
classe Finestra
codice:
public class Finestra extends javax.swing.JFrame {

    public Finestra() {
        initComponents();
        lista.setCellRenderer(new MyRenderer());
    }

    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        jScrollPane1 = new javax.swing.JScrollPane();
        lista = new javax.swing.JList();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        lista.setModel(new javax.swing.AbstractListModel() {
            String[] strings = { "Auto", "Moto", "Treno" };
            public int getSize() { return strings.length; }
            public Object getElementAt(int i) { return strings[i]; }
        });
        jScrollPane1.setViewportView(lista);

        getContentPane().add(jScrollPane1, java.awt.BorderLayout.CENTER);

        pack();
    }// </editor-fold>                        

    // Variables declaration - do not modify                     
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JList lista;
    // End of variables declaration                   

}
classe MyRenderer
codice:
import java.awt.Component;
import javax.swing.*;

public class MyRenderer extends javax.swing.JPanel implements ListCellRenderer {

    public MyRenderer() {
        initComponents();
    }
    
    public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
        labelVeicolo.setText(value.toString());
        return this;
    }

    // <editor-fold defaultstate="collapsed" desc="Generated Code">                          
    private void initComponents() {

        labelVeicolo = new javax.swing.JLabel();
        bottoneUsa = new javax.swing.JButton();
        bottoneRimuovi = new javax.swing.JButton();

        labelVeicolo.setFont(new java.awt.Font("Tahoma", 1, 11)); // NOI18N
        labelVeicolo.setText("testo");
        add(labelVeicolo);

        bottoneUsa.setText("Usa");
        add(bottoneUsa);

        bottoneRimuovi.setText("Rimuovi");
        add(bottoneRimuovi);
    }// </editor-fold>                        

    // Variables declaration - do not modify                     
    private javax.swing.JButton bottoneRimuovi;
    private javax.swing.JButton bottoneUsa;
    private javax.swing.JLabel labelVeicolo;
    // End of variables declaration                   

}

Grazie