Duvida para popular comboBox

5 respostas
robson.souza1990

Quero popular um combobox com um array de objetos, e até ai tudo bem. O problema é que da erro na aplicação quando eu tento adicionar um atributo desse objeto. Abaixo o trecho do código.

Atividade atividadeVet[] = manterTurma.listarAtividades();
		
		 
		
		JComboBox comboBoxAtividade = new JComboBox();
		
		for( Atividade atividade: atividadeVet ){     
		     comboBoxAtividade.addItem(atividade.getNome);     
		}

Desde já agradeço.

5 Respostas

thiago.correa

E qual seria o erro?! Coloca o stack trace aí pra nós!

robson.souza1990

Com o código como esta nem abre a tela do combo box… se eu deixar apenas o objeto ao invés de objeto.getNome não da erro…e aparece as informações da instância.

abaixo o erro do console.

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
	at face.TelaInserirTurma.<init>(TelaInserirTurma.java:122)
	at controle.ManterTurma.iniciarCadastroTurma(ManterTurma.java:21)
	at controle.Programa.iniciarCadastroTurma(Programa.java:37)
	at face.TelaInicial$2.actionPerformed(TelaInicial.java:86)
	at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
	at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
	at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
	at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
	at java.awt.Component.processMouseEvent(Unknown Source)
	at javax.swing.JComponent.processMouseEvent(Unknown Source)
	at java.awt.Component.processEvent(Unknown Source)
	at java.awt.Container.processEvent(Unknown Source)
	at java.awt.Component.dispatchEventImpl(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
	at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
	at java.awt.Container.dispatchEventImpl(Unknown Source)
	at java.awt.Window.dispatchEventImpl(Unknown Source)
	at java.awt.Component.dispatchEvent(Unknown Source)
	at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
	at java.awt.EventQueue.access$000(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.awt.EventQueue$3.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.awt.EventQueue$4.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
	at java.awt.EventQueue.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
	at java.awt.EventDispatchThread.run(Unknown Source)
thiago.correa

repare que o objeto está nulo pois está dando um java.lang.NullPointerException em TelaInserirTurma.java na linha 122, temos 3 locais possíveis

manterTurma.listarAtividades();

ou

comboBoxAtividade.addItem(atividade.getNome);
aqui o comboBoxAtividade pode estar nulo.

ou ainda

atividade.getNome()
Se for no getNome, você deverá depurar o seu código e descobrir o que há de errado.

Marlon_Meneses

faz o seguinte…
na classe sobescreva o método toString

public String toString(){ return getNome(); }

e no JComboBox faça

robson.souza1990

Obrigado pela ajuda. Do jeito que o Marlon disse funcionou certinho com o toString().

Criado 18 de novembro de 2012
Ultima resposta 20 de nov. de 2012
Respostas 5
Participantes 3