Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException

Quando tento capturar o conteudo da JCombobox acontece o erro

onde estou errando?

Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException

public class Imprimir {

private String sPorta;

public void imprimir_cheque() throws InterruptedException
{
    
         SerialPort serialPort;
         Form1 form1;
         JOptionPane.showMessageDialog(null, " entrou imprimir cheque" );
 try

    {
				  
        
	    form1=new Form1();
	    **JComboBox  combo=form1.getJComboPorta();
        sPorta=(String) combo.getSelectedItem();**
        JOptionPane.showMessageDialog(null, "Porta Imprimir  " + sPorta);
       
        serialPort = new SerialPort  (sPorta);

Form1

public class Form1 extends javax.swing.JFrame {
 Imprimir imprimir;
 
 JComboBox JComboPorta;
/**
 * Creates new form Form1
 */
public Form1() {
    initComponents();

      
 DefaultComboBoxModel(SerialPortList.getPortNames()));
}

public JComboBox getJComboPorta() {
    return JComboPorta;
}

O erro acontece aqui?

sim

Para você converter (realizar o cast) um elemento de um JComboBox, você precisa, primeiro, tê-lo selecionado.
Provavelmente seja isso.

Se eu mudo para:
sPorta=combo.getSelectedItem();
o editor da sugestão de usar o cast ou mudar a variavel para object
eu quero o conteudo selecionado para usar logo em seguida.

Cara, é que você precisa definir um evento para “escutar” a seleção, Quando a seleção ocorrer, aí sim, você consegue pegar o que foi selecionado.
Ou você define um valor pré definido, o que ao meu ver não é correto, afinal, você está solicitando ao usuário que escolha uma opção.

1 curtida