JComboBox não abre a lista de itens

Boa tarde pessoal,

estava estudando uns exercícios com layouts e me deparei com uma coisa estranha, os 2 jcombobox que coloquei na tela não abre a lista de itens quando estão gerenciados no gridbaglayout. Alguem poderia me explicar onde estou errando?

[code]package swing_testes.testes;

import java.awt.BorderLayout;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import java.awt.Insets;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.BorderFactory;
import javax.swing.ButtonGroup;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextField;

/**
*

  • @author Tebo Software - Shubacca

  • @date 16/05/2009
    */
    public class ReservasAereas extends JFrame {

    public ReservasAereas() {
    setTitle(“Reservas Aéreas”);
    setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);
    addWindowListener(new WindowAdapter() {

         @Override
         public void windowClosing(WindowEvent e) {
             if (JOptionPane.showConfirmDialog(rootPane, "Fechar Janela?", "Atenção", JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE) == JOptionPane.YES_OPTION) {
                 System.exit(0);
             }
         }
     });
    
     //Dados da Reserva
     DefaultComboBoxModel dcbmDestinos = new DefaultComboBoxModel(new String[]{"Franca", "Ribeirão Preto", "São Paulo"});
     JPanel pnlReserva = new JPanel(new GridBagLayout());
     JLabel lblData = new JLabel("Data:");
     JTextField tfdData = new JTextField();
     JLabel lblDe = new JLabel("De:");
     final JComboBox cbxDe = new JComboBox();
     cbxDe.setModel(dcbmDestinos);
     JLabel lblAte = new JLabel("Até:");
     JComboBox cbxAte = new JComboBox();
     cbxAte.setModel(dcbmDestinos);
     JPanel pnlOpcoes = new JPanel(new GridLayout(3, 1));
     pnlOpcoes.setBorder(BorderFactory.createTitledBorder("Classe"));
     ButtonGroup bg = new ButtonGroup();
     JRadioButton rbtPrimeiraClasse = new JRadioButton("1ª Classe", true);
     JRadioButton rbtSegundaClasse = new JRadioButton("2ª Classe");
     JRadioButton rbtTerceiraClasse = new JRadioButton("3ª Classe");
     bg.add(rbtPrimeiraClasse);
     bg.add(rbtSegundaClasse);
     bg.add(rbtTerceiraClasse);
     pnlOpcoes.add(rbtPrimeiraClasse);
     pnlOpcoes.add(rbtSegundaClasse);
     pnlOpcoes.add(rbtTerceiraClasse);
     
     GridBagConstraints con = new GridBagConstraints();
     con.insets = new Insets(2, 2, 2, 2);
    
     pnlReserva.add(lblData, con);
     con.gridy = 1;
     pnlReserva.add(lblDe, con);
     con.gridy = 2;
     pnlReserva.add(lblAte, con);
    
     con.anchor = GridBagConstraints.CENTER;
     con.gridx = 1;
     con.gridy = 0;
     con.weightx = 1;
     con.fill = GridBagConstraints.HORIZONTAL;
     pnlReserva.add(tfdData, con);
     con.gridy = 1;
     pnlReserva.add(cbxDe, con);
     con.gridy = 2;
     pnlReserva.add(cbxAte, con);
     con.gridx = 2;
     con.gridy = 0;
     con.gridheight = 3;
     con.weightx = 0;
     con.fill = GridBagConstraints.NONE;
     pnlReserva.add(pnlOpcoes, con);
    
     JPanel pnlVoos = new JPanel(new BorderLayout());
     pnlVoos.setBorder(BorderFactory.createTitledBorder("Voos Disponíveis"));
     JList lstVoos = new JList(dcbmDestinos);
     JScrollPane srpVoos = new JScrollPane(lstVoos);
     pnlVoos.add(srpVoos, BorderLayout.CENTER);
    
     JPanel pnlBotoes = new JPanel();
     JButton btnBuscar = new JButton("Buscar");
     btnBuscar.addActionListener(new ActionListener() {
    
         public void actionPerformed(ActionEvent e) {
             cbxDe.showPopup();
             JOptionPane.showMessageDialog(rootPane, cbxDe.getModel().getSize());
         }
     });
     JButton btnComprar = new JButton("Comprar");
     JButton btnFechar = new JButton("Fechar");
     pnlBotoes.add(btnBuscar);
     pnlBotoes.add(btnComprar);
     pnlBotoes.add(btnFechar);
    
     getRootPane().setLayout(new BorderLayout());
     getRootPane().add(pnlReserva, BorderLayout.NORTH);
     getRootPane().add(pnlVoos, BorderLayout.CENTER);
     getRootPane().add(pnlBotoes, BorderLayout.SOUTH);
     pack();
     setLocation((Toolkit.getDefaultToolkit().getScreenSize().width - getWidth()) / 2 ,
             (Toolkit.getDefaultToolkit().getScreenSize().height - getHeight()) / 2);
     setVisible(true);
    

    }

    public static void main(String[] args) {

     new ReservasAereas();
     JFrame j = new JFrame("Teste");
     j.setDefaultCloseOperation(DISPOSE_ON_CLOSE);
     j.add(new JComboBox(new String[]{"Teste1", "Teste2", "Teste3", "Teste4"}));
     j.pack();
     j.setVisible(true);
    

    }
    }
    [/code]

desde já agradçeo