Não consigo setar meu JComboBOX Help! [RESOLVIDO]

Ola pessual não sei mais o que fazer, ja li, reli e treli artigos e não consigo implementar isso.

Estou usando o net Beans.

tenho um combo box = “Livros”,“Periodicos”, “Multimidia”, “Notbooks”;

Me diseram que preciso setar esses campos pois tenho seus respectivos txtBoxs:

Livros = txt_ISBN;
periodicos = txt_ISSN;
multimidia = cod_Mulimidia;
notbooks = cod_Ativo;

mas como faço para definir essas variaveis nos text boxes, ou seja referencia-las nos txt boxes pois elas estão sendo chamadas do comboBox.

e queria que ocorresse o seguinte:


if  (meucomboBOX.equals("Livros")){  // não sei se isso esta certo?
txt_ISBN = true; // gostaria que o campo ficasse atio para inserção de dados
txt_ISSN = false; // ficasse apagado
txt_codAtivo = false // ||       ||
txt_cod_Multimidia = false //  ||         ||
}
else if (meucomboBOX.equals("Periodicos")){  // não sei se isso esta certo?
txt_ISBN = false; // apagado
txt_ISSN = true; // gostaria que o campo ficasse atio para inserção de dados 
txt_codAtivo = false // ||       ||
txt_cod_Multimidia = false //  ||         ||
}
else if (meucomboBOX.equals("Multimidia")){  // não sei se isso esta certo?
txt_ISBN = false; // apagado
txt_ISSN = false; // apagado
txt_codAtivo = false // ||       ||
txt_cod_Multimidia = false //  gostaria que o campo ficasse atio para inserção de dados 
}
else if (meucomboBOX.equals("Notbook")){  // não sei se isso esta certo?
txt_ISBN = false; // apagado
txt_ISSN = false; // apagado
txt_codAtivo = true // gostaria que o campo ficasse atio para inserção de dados 
txt_cod_Multimidia = false //  apagado
}
else                                            // gostaria que os campos viessem apagados, teria como definir isso? onde posso definir?
txt_ISBN = false; // apagado
txt_ISSN = false; // apagado
txt_codAtivo = false // apagado 
txt_cod_Multimidia = false //  apagado

então pessual tenho muitas outras duvidas, mas se me ajudarem essa será a chave para solucionar todas as outras, perguntei po eu professor da facul mas ele disse que nao vamos fazer nada em java so em banco mas acho totalmente possivel fazer isso no java, senao nao teria necesidade de uma linguagem tão poderosa so pra criar interfaces, me desculpem na minha ignorância e falta de conhecimento por favor e imploro que me ajudem e não sei mais a quem pedir se até mesmo o professor não quis ajudar.

Abraços

para verificar quem foi selecionado, utilize:

[code]if (meucomboBOX.getSelectedItem().equals(“Livro”)){

	}[/code]

hum emtendi.

mas e como defino os campos o combo, faço array?

Você quer inserir dados no combo, é isso?

não o combo vem com quatro opções:

Livros
revistas
multimidia
notbooks

como faço pra colar imagem aki no forum?

ficaria mais facil de entender.

O combo tem 4 opções, então você quer descobrir qual opção o cara escolheu, e isso?

sim, exato, ai se ele escolhe cai no if ou switch pra perguntar.

Para trabalhar com condições de acordo com a opção que o usuário escolher no seu JComboBox, você pode fazer algo assim:


String uf[] = {"GO", "MG"};

JComboBox comboTeste = new JComboBox(uf);
comboTeste.setBounds(10,10,50,22);
tela.add(comboTeste);
comboTeste.addActionListener(new ActionListener(){
   public void actionPerformed(ActionEvent e){
     verificaOpcao();
}


private void verificaOpcao(){
    if (comboTeste.getSelectedItem == "GO"){
    //...
    }else{
          if(comboTeste.getSelectedItem == "MG"){
       //...
    }
}

Inserindo elementos na combo:

meuCombo.addItem("Selecione"); meuCombo.addItem("Livro"); meuCombo.addItem("Revista"); meuCombo.addItem("Jornal");

e o listener:

[code] meuCombo.addItemListener(new ItemListener(){

		@Override
		public void itemStateChanged(ItemEvent arg0) {
			escolheSelecao((String)arg0.getItem());
		}
		
	});
}[/code]

e, finalmente, o método:

[code] private void escolheSelecao(String selecionado){
if (selecionado.equals(“Livro”)){

	}else if (selecionado.equals("Revista")){
		
	}
}[/code]

era isso? =)

[quote=Nicholas][quote]
sim, exato, ai se ele escolhe cai no if ou switch pra perguntar.
[/quote]

Para trabalhar com condições de acordo com a opção que o usuário escolher no seu JComboBox, você pode fazer algo assim:


String uf[] = {"GO", "MG"};

JComboBox comboTeste = new JComboBox(uf);
comboTeste.setBounds(10,10,50,22);
tela.add(comboTeste);

if (comboTeste.getSelectedItem == "GO"){
//...
}else{
      if(comboTeste.getSelectedItem == "MG"){
       //...
}

[/quote]

Vou tentar fazer e ja coloco o código de volta pra ver se está ok.

Obrigado

Postei o exemplo sem o Action… reeditei acrescentando ele + o método de verificação.

fiz do jeito que foi ccitado no exemplo

 private void combo_TipoMouseClicked(java.awt.event.MouseEvent evt) {                                        
    String Tipo[] = {"Livros", "Periodicos","Multimidia","Notbooks"};   
  
combo_Tipo comboTeste = new combo_Tipo(Tipo);   
comboTeste.setBounds(25,20,30,30);   
tela.add(comboTeste);   
  
if (comboTeste.getSelectedItem == "Livros")
{   
txt_ISBN = true; // gostaria que o campo ficasse atio para inserção de dados   
txt_ISSN = false; // ficasse apagado   
txt_codAtivo = false; // ||       ||   
txt_cod_Multimidia = false; //  ||    
}else{   
      if(comboTeste.getSelectedItem == "Periodicos")
      {   
        txt_ISBN = false;    
        txt_ISSN = true;    
        txt_codAtivo = false; // ||       ||   
        txt_cod_Multimidia = false; //  ||    
        }else{   
              if(comboTeste.getSelectedItem == "Multimidia")
                {   
                txt_ISBN = false;    
                txt_ISSN = false;    
                txt_codAtivo = false; // ||       ||   
                txt_cod_Multimidia = true; //  ||    
                }else{   
                    if(comboTeste.getSelectedItem == "Notbook")
                    {   
                    txt_ISBN = false;    
                    txt_ISSN = false;    
                    txt_codAtivo = true; // ||       ||   
                    txt_cod_Multimidia = false; //  ||    
                    } else
                        txt_ISBN = false;    
                    txt_ISSN = false;    
                    txt_codAtivo = false; // ||       ||   
                    txt_cod_Multimidia = false; 
                    
                    
    }                                       
    
    
    public static void main(String args[]) {                              //Passou a dar erro a partir dessa linha dizendo que ilegal star of expression
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new Cadastro_Acervo().setVisible(true);
            }
        });
    }
    
    // Variables declaration - do not modify                     
    private javax.swing.JButton buton_alterar;
    private javax.swing.JButton buton_excluir;
    private javax.swing.JButton buton_salvar;
    private javax.swing.JButton button_inserir;
    private javax.swing.JComboBox combo_Tipo;
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JButton jButton4;
    private javax.swing.JButton jButton5;
    private javax.swing.JButton jButton6;
    private javax.swing.JButton jButton7;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JLabel label_Autor;
    private javax.swing.JLabel label_ISBN;
    private javax.swing.JLabel label_ISSN;
    private javax.swing.JLabel label_NumeroAtivo;
    private javax.swing.JLabel label_Tipo;
    private javax.swing.JLabel label_Titulo;
    private javax.swing.JLabel label_assunto;
    private javax.swing.JLabel label_codMultimidia;
    private javax.swing.JLabel label_edicao;
    private javax.swing.JLabel label_editora;
    private javax.swing.JLabel label_publicacao;
    private javax.swing.JLabel label_quantidade;
    private javax.swing.JLabel label_restrito;
    private javax.swing.JRadioButton rbuton_nao;
    private javax.swing.JRadioButton rbuton_sim;
    private javax.swing.JTextField text_Autor;
    private javax.swing.JTextField text_ISBN;
    private javax.swing.JTextField text_ISSN;
    private javax.swing.JTextField text_Titulo;
    private javax.swing.JTextField text_assunto;
    private javax.swing.JTextField text_codMultimidia;
    private javax.swing.JTextField text_edicao;
    private javax.swing.JTextField text_editora;
    private javax.swing.JTextField text_numAtivo;
    private javax.swing.JTextField text_publicacao;
    private javax.swing.JTextField text_quantidade;
    // End of variables declaration                   
    
}

´Poreém agora ele deu uma série de erros nas linhas posteriores ao código que escrevi.

Adiciona o ActionListener + o método como citei no post acima, eu reeditei o exemplo para facilitar a lógica.

onde???

Utiliza este exemplo aqui…

import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JOptionPane;


public class TesteJComboBox extends JFrame{

	private static final long serialVersionUID = 1L;
	private JComboBox comboTeste;

	public TesteJComboBox(){
		Container tela = getContentPane();
		setSize (300,300);
		setLayout(null);
		setLocationRelativeTo(null);
		
		String uf[] = {" ", "GO", "MG"};
		
		comboTeste = new JComboBox(uf);
		comboTeste.setBounds(100, 100, 100, 22);
		tela.add(comboTeste);
		comboTeste.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				verificaOp();
			}});
	}
	
	private void verificaOp(){
		if(comboTeste.getSelectedItem() == "GO"){
			JOptionPane.showMessageDialog(null, "GO", "", JOptionPane.INFORMATION_MESSAGE);
		}else{
			if(comboTeste.getSelectedItem() == "MG"){
				JOptionPane.showMessageDialog(null, "MG", "", JOptionPane.INFORMATION_MESSAGE);

			}
		}
	}
	
	public static void main(String[] args) {
		TesteJComboBox teste = new TesteJComboBox();
		teste.setVisible(true);
		teste.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
	}
	

}

Vou verificar

  1. DIMINUI ESSE AVATAR!
    kkkk

boa sorte… flws!

[quote=Nicholas]Utiliza este exemplo aqui…

import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JOptionPane;


public class TesteJComboBox extends JFrame{

	private static final long serialVersionUID = 1L;
	private JComboBox comboTeste;

	public TesteJComboBox(){
		Container tela = getContentPane();
		setSize (300,300);
		setLayout(null);
		setLocationRelativeTo(null);
		
		String uf[] = {" ", "GO", "MG"};
		
		comboTeste = new JComboBox(uf);
		comboTeste.setBounds(100, 100, 100, 22);
		tela.add(comboTeste);
		comboTeste.addActionListener(new ActionListener(){
			public void actionPerformed(ActionEvent e){
				verificaOp();
			}});
	}
	
	private void verificaOp(){
		if(comboTeste.getSelectedItem() == "GO"){
			JOptionPane.showMessageDialog(null, "GO", "", JOptionPane.INFORMATION_MESSAGE);
		}else{
			if(comboTeste.getSelectedItem() == "MG"){
				JOptionPane.showMessageDialog(null, "MG", "", JOptionPane.INFORMATION_MESSAGE);

			}
		}
	}
	
	public static void main(String[] args) {
		TesteJComboBox teste = new TesteJComboBox();
		teste.setVisible(true);
		teste.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
	}
	

}

[/quote]

É isso mesmo que quero fazer so que tem uma diferença tenho os campos txt onde ao inves de aparecer o JOptionPane gostaria que ele fosse direto para o campo correspondente ao item selecionado, e este estando apagado respectivamente acendesse e os outros mantessem apagados, como faço para ele ir para o campo que eu desejo?

[quote=pedroroxd]1) DIMINUI ESSE AVATAR!
kkkk

boa sorte… flws![/quote]

Melhorou???

[quote=TCalderoni]
Melhorou???[/quote]

Com certeza :wink: