conteúdo selecionado do JCombobox

14 respostas
E

e ai galera…

to com um problema que já tentei d várias formas resolvê-lo mas nada deu certo.

to tentando pegar o conteúdo selecionado de um JComboBox q está em uma classe externa.

to fazendo algo do tipo:

if(classeExterna.Sexo.getSelectedItem().equals("Masculino") { System.out.println("Masculino"); } if(classeExterna.Sexo.getSelectedItem().equals("Feminino") { System.out.println("Feminino"); }

po galera, se alguém puder me esclarecer isso fico mto agradecido

vlw

flws

14 Respostas

ViniGodoy

Sua combo está declarada como public?

E

sim, está declarado como public.

dá erro na linha:

if(classeExterna.Sexo.getSelectedItem().equals("Masculino")
silva.fernandes

Cara, seu código para gente ver o que está acontecendo …

:smiley:

Assim a gente pode ver aonde tá pegando

:thumbup:

E

foi mal...

meu código:

package Acoes.InserirNoBanco;

import java.awt.event.*;
import java.sql.*;
import javax.swing.JOptionPane;
import MenuDocentes.AbasCadastro.DadosPessoais;

public class GravarDadosPessoais implements ActionListener
{
	
	private DadosPessoais	dados;
	
	public GravarDadosPessoais(DadosPessoais dados)
	{
		this.dados = dados;
	}
	
	public void actionPerformed(ActionEvent e)
	{
		System.out.println(dados.Nome.getText());
		
		Connection con = null;
		
		try
		{

			//este é um dos meios para registrar um driver
			Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

			//registrado o driver, vamos estabelecer uma conexão
			con = DriverManager.getConnection("...", "...", "...");
			
			String sexo;
			
			sexo = dados.Sexo.getSelectedItem().toString();
			
			System.out.println(sexo);
			
			
			
			
			String grava;
			
			//comando para gravar os dados
			grava = "insert into Docentes (nome, cpf, rgc, rg, orgao_exp, data_nasc, nacionalidade) values" +
					"('"+dados.Nome.getText()+"'," +
					" '"+dados.CPF.getText()+"'," +
					" '"+dados.RGC.getText()+"'," +
					" '"+dados.RG.getText()+"'," +
					" '"+dados.Orgao.getText()+"'," +
					" '"+dados.Data.getText()+"'," +
					" '"+dados.Nacion.getText()+"')";
			
			
			
			Statement stm	=	con.createStatement();
			stm.executeUpdate(grava);
			
			JOptionPane.showMessageDialog(null, "Informações do docente foram atualizadas com sucesso.", "Aviso", JOptionPane.PLAIN_MESSAGE);
		}
		catch(Exception ex)
		{
			ex.printStackTrace();
		}
		finally
		{
			try
			{
				con.close();
			}
			catch(SQLException onConClose)
			{
				System.out.println("Houve um erro no fechamento da conexão");
				onConClose.printStackTrace();
			}
		}
	}

}

se alguem puder me socorre agradeço.

vlw d novo galera

flws

cassio

evandrosantos:
e ai galera…

to com um problema que já tentei d várias formas resolvê-lo mas nada deu certo.

to tentando pegar o conteúdo selecionado de um JComboBox q está em uma classe externa.

to fazendo algo do tipo:

if(classeExterna.Sexo.getSelectedItem().equals("Masculino") { System.out.println("Masculino"); } if(classeExterna.Sexo.getSelectedItem().equals("Feminino") { System.out.println("Feminino"); }

po galera, se alguém puder me esclarecer isso fico mto agradecido

vlw

flws

olhando este trecho de código que vc postou na sua primeira mensagem, vejo que os parenteses dos if’s estão desbalanceados… Falta fechar em:

if(classeExterna.Sexo.getSelectedItem().equals("Masculino"))  &lt==

e em:

if(classeExterna.Sexo.getSelectedItem().equals("Feminino")) &lt==

Não sei se isso tem influência no erro, mesmo porque você não disse qual é o erro…

silva.fernandes

Coloca a classe DadosPessoais, que eu acredito que é nela que esteja o JComboBox.

E

cassio:
evandrosantos:
e ai galera…

to com um problema que já tentei d várias formas resolvê-lo mas nada deu certo.

to tentando pegar o conteúdo selecionado de um JComboBox q está em uma classe externa.

to fazendo algo do tipo:

if(classeExterna.Sexo.getSelectedItem().equals("Masculino") { System.out.println("Masculino"); } if(classeExterna.Sexo.getSelectedItem().equals("Feminino") { System.out.println("Feminino"); }

po galera, se alguém puder me esclarecer isso fico mto agradecido

vlw

flws

olhando este trecho de código que vc postou na sua primeira mensagem, vejo que os parenteses dos if’s estão desbalanceados… Falta fechar em:

if(classeExterna.Sexo.getSelectedItem().equals("Masculino"))  &lt==

e em:

if(classeExterna.Sexo.getSelectedItem().equals("Feminino")) &lt==

Não sei se isso tem influência no erro, mesmo porque você não disse qual é o erro…

os parenteses estão ok…

tah dando esse erro:

java.lang.NullPointerException
	at Acoes.InserirNoBanco.GravarDadosPessoais.actionPerformed(GravarDadosPessoais.java:35)
	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.dispatchEvent(Unknown Source)
	at java.awt.EventDispatchThread.pumpOneEventForHierarchy(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)

não faço a mínima idéia…jah tentei trocar a classe mas ai dah erro…
naum sei mais o q fazer…

por favor me ajudem

vlw

cassio

Está dando erro porque o seu objeto dados é nulo quando você faz

sexo = dados.Sexo.getSelectedItem().toString();

na linha 35.

Ele já está vindo como null do outro objeto onde vc cria o objeto GravarDadosPessoais, então vc precisa olhar o código desta outra classe pois aparentemente o erro não é no arquivo GravarDadosPessoais.java.

Ou então é o atributo Sexo. De que tipo ele é? Se for String, pode ser que ele é que esteja vindo como null.

E

cassio:
Está dando erro porque o seu objeto dados é nulo quando você faz

sexo = dados.Sexo.getSelectedItem().toString();

na linha 35.

Ele já está vindo como null do outro objeto onde vc cria o objeto GravarDadosPessoais, então vc precisa olhar o código desta outra classe pois aparentemente o erro não é no arquivo GravarDadosPessoais.java.

Ou então é o atributo Sexo. De que tipo ele é? Se for String, pode ser que ele é que esteja vindo como null.

entaum…

sexo é do tipo String
Sexo é JCombobox

como eu faço pra saber se está vindo nulo? pq eu tento imprimir no console e dah o erro q eu coloquei lah em cima…

silva.fernandes

Verifica oq está retornando nesta String

evandrosantos wrote:

String sexo;

sexo = dados.Sexo.getSelectedItem().toString();
		
		System.out.println(sexo);</blockquote>

Verifica se tá retornando alguma coisa, ou se ta retornando null

silva.fernandes

Voce esta usando essa String sexo pra que ?

Pelo q dá pra ver ela não far parte da sua query.

Pra q ela tá ali ?

E

silva.fernandes:
Voce esta usando essa String sexo pra que ?

Pelo q dá pra ver ela não far parte da sua query.

Pra q ela tá ali ?

eu to usando ela pq quero ver se quando eu seleciono o sexo no combobox ele me retorna o q eu escolhi…

eu só quero saber isso…

ai depois eu to tentando jogar a string no console, entendeu?

silva.fernandes

deixa assim sua String sexo.

String sexo = dados.Sexo.getSelectedItem().toString(); if (sexo == null) { System.out.println("JComboBox sem valor"); }else{ System.out.println("JComboBox com valor: " + sexo); }

Assim podemos ser mais claro se ela vai retornar algum valor ou não.

E

ae galera, consegui resolver…

o problema tava na classe externa, na hora de eu declarar o combobox…
o resto tava certo

obrigado pela atenção e ajuda de tds

vlw

t+

flws

Criado 5 de janeiro de 2007
Ultima resposta 5 de jan. de 2007
Respostas 14
Participantes 4