Pergunta

Tentar defini-lo por isso, se uma determinada condição for satisfeita, uma das duas caixas de seleção serão verificadas. No entanto, eu continuo recebendo um erro de NullPointerException.

O código é ..

        //Set the flat rate or hourly billing check boxes.
    if(flatRateint > 0) {
        InvoiceUI.jCheckBox1.setSelected(true);
    }
    else {
        InvoiceUI.jCheckBox2.setSelected(true);
    }

O erro é

Exception in thread "AWT-EventQueue-0" Java.lang.NullPointerException em my.freelancebillingapp.InvoiceSelectionUI.jButton1MouseClicked (InvoiceSelectionUI.java:224) em my.freelancebillingapp.InvoiceSelectionUI.access $ 100 (InvoiceSelectionUI.java:17) em my.freelancebillingapp.InvoiceSelectionUI $ 2.mouseClicked (InvoiceSelectionUI.java:86) em java.awt.AWTEventMulticaster.mouseClicked (AWTEventMulticaster.java:253) em java.awt.Component.processMouseEvent (Component.java:6266) em javax.swing.JComponent.processMouseEvent (JComponent.java:3267) em java.awt.Component.processEvent (Component.java:6028) em java.awt.Container.processEvent (Container.java:2041) em java.awt.Component.dispatchEventImpl (Component.java:4630) em java.awt.Container.dispatchEventImpl (Container.java:2099) em java.awt.Component.dispatchEvent (Component.java:4460) em java.awt.LightweightDispatcher.retargetMouseEvent (Container.java:4574) em java.awt.LightweightDispatcher.processMouseEvent (Container.java:4247) em java.awt.LightweightDispatcher.dispatchEvent (Container.java:4168) em java.awt.Container.dispatchEventImpl (Container.java:2085) em java.awt.Window.dispatchEventImpl (Window.java:2475) em java.awt.Component.dispatchEvent (Component.java:4460) em java.awt.EventQueue.dispatchEvent (EventQueue.java:599) em java.awt.EventDispatchThread.pumpOneEventForFilters (EventDispatchThread.java:269) em java.awt.EventDispatchThread.pumpEventsForFilter (EventDispatchThread.java:184) em java.awt.EventDispatchThread.pumpEventsForHierarchy (EventDispatchThread.java:174) em java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:169) em java.awt.EventDispatchThread.pumpEvents (EventDispatchThread.java:161) em java.awt.EventDispatchThread.run (EventDispatchThread.java:122)

Foi útil?

Solução

Assumindo linha 224 da InvoiceSelectionUI.java está incluído na sua amostra, uma das seguintes opções deve ser nulo:

  • InvoiceUI
  • InvoiceUI.jCheckBox1
  • InvoiceUI.jCheckBox2
  • flatRateint (se é um Integer, mas não se é um int)

Outras dicas

Eu acho JCheckBox [12] são campos estáticos da InvoiceUI você não inicializou.

Meu primeiro instinto é que flatRateint pode ser nulo, mas a partir do nome que eu estou supondo que é um int primitiva, o que descartar essa possibilidade. Sua mensagem de erro é de cerca de cliques do mouse; então eu suspeito código em seu método onclick(). Eu não sou nenhum guru, mas eu acho que os erros geralmente ocorrem duas ou três linhas antes do local mencionado na impressão de erro real. Talvez algo como

if(someObj.someMethod() == foo)
    flatRateint = 5;
else
    flatRateint = 8;

e someObj nunca foi inicializado?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top