JComboBox

Olá a todos,
tenho um JCombobox com uma lista de opções, e um item “Novo…”.
Este item chama um JInternalFrame que cadastra novos itens no JComboBox.
Gostaria de saber como eu faço para que, quando eu clique no botao “Cadastrar” desse JInternalFrame, o valor do JTextField (onde eu coloquei o item a ser adicionado no JComboBox) apareça no JComboBox.
Alguem sabe como me ajudar???
[]'s

Basta adicionar o item novo ao ListModel do seu JComboBox - se vc estiver usando o DefaultListModel, o JComboBox se atualiza sozinho.

Fica melhor ainda se vc fizer o ListModel selecionar automaticamente o ultimo item adicionado :slight_smile:

Olá cv,
Não entendi muito bem, que ListModel eh esse? eu não o uso em meu código, vc poderia me passar um exemplo de uso.
Aqui vai meu código de exemplo


if (jComboBoxLinha.getSelectedItem() == "Nova...") {
  AplCadastrarLinha cL = new AplCadastrarLinha();
  cL.setSize(350, 150);
  j.add(cL);
  cL.show();
  cL.moveToFront();
}

onde o objeto AplCadastrarLinha eh o jInternalFrame q irá cadastrar o novo item do jComboBox

Olá Vivi, :lol:

Eu fiz um pequeno teste aqui e criei uma JComboBox, adicionei um evento ActionListener e nesse evento coloquei o seguinte codigo:

        if( !((String)jComboBox1.getSelectedItem()).equals("Novo...") ) return;
        
        // Fecha o popup pra nao ficar aparecendo de fundo ( coisa feia! )
        
        jComboBox1.setPopupVisible(false);
        javax.swing.JOptionPane pane = new javax.swing.JOptionPane();
        String novo_item = pane.showInputDialog(this, "Digite o novo item:");
        
        // Adiciona o item na combo
        jComboBox1.addItem( novo_item );
        
        // Atualiza os itens com o modelo
        jComboBox1.revalidate();
        
        // Seleciona o primeiro item
        jComboBox1.setSelectedIndex(0);       

Acho que deu pra voce entender a ideia, né ? :stuck_out_tongue:
Isso ai funcionou aqui acho q do jeito q voce queria… Só que chamei uma dialog pra entrar com o novo item…

Qualquer coisa estamos ai… 8)

Abraços,