Minha duvida é o seguinte, eu estou criando uma tela que irá listar os produtos cadastrados, nesta tela eu tenho um JComboBox que lista os tipos de busca, eu quero que ao selecionar o tipo de busca apareça em frente a este JComboBox um componente correspondente, por exemplo, se eu seleciono buscar por nome, quero que apareça um JTextField, se eu selecionar por tipo eu quero que aparece um JComboBox que listará os tipos.
Alguem sabe como posso fazer isso?
Estou utilizando o netbeans.
importjava.awt.Component;importjavax.swing.JComboBox;importjavax.swing.JOptionPane;importjavax.swing.JTextField;/* * JanelaProcura.java * * Created on 24 de Janeiro de 2008, 16:45 *//** * * @author adm */publicclassJanelaProcuraextendsjavax.swing.JFrame{/** Creates new form JanelaProcura */publicJanelaProcura(){initComponents();}/** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */// <editor-fold defaultstate="collapsed" desc=" Código Gerado "> privatevoidinitComponents(){jLabel1=newjavax.swing.JLabel();cboopcao=newjavax.swing.JComboBox();pnlopcao=newjavax.swing.JPanel();cmdverificar=newjavax.swing.JButton();getContentPane().setLayout(null);setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);jLabel1.setText("Op\u00e7\u00e3o");getContentPane().add(jLabel1);jLabel1.setBounds(10,20,50,14);cboopcao.setModel(newjavax.swing.DefaultComboBoxModel(newString[]{"","Nome","Tipo"}));cboopcao.addItemListener(newjava.awt.event.ItemListener(){publicvoiditemStateChanged(java.awt.event.ItemEventevt){cboopcaoItemStateChanged(evt);}});getContentPane().add(cboopcao);cboopcao.setBounds(70,20,170,20);pnlopcao.setLayout(newjava.awt.BorderLayout());getContentPane().add(pnlopcao);pnlopcao.setBounds(260,20,180,30);cmdverificar.setText("Verificar");cmdverificar.addActionListener(newjava.awt.event.ActionListener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){cmdverificarActionPerformed(evt);}});getContentPane().add(cmdverificar);cmdverificar.setBounds(180,70,90,23);java.awt.DimensionscreenSize=java.awt.Toolkit.getDefaultToolkit().getScreenSize();setBounds((screenSize.width-479)/2,(screenSize.height-134)/2,479,134);}// </editor-fold> privatevoidcmdverificarActionPerformed(java.awt.event.ActionEventevt){// TODO adicione seu código de manipulação aqui:if(pnlopcao.getComponents().length!=0){Componentc=pnlopcao.getComponents()[0];if(cinstanceofJTextField){JOptionPane.showMessageDialog(null,((JTextField)c).getText());}if(cinstanceofJComboBox){JOptionPane.showMessageDialog(null,((JComboBox)c).getSelectedItem().toString());}}}privatevoidcboopcaoItemStateChanged(java.awt.event.ItemEventevt){// TODO adicione seu código de manipulação aqui:if(cboopcao.getSelectedItem().toString().equals("Nome")){pnlopcao.removeAll();pnlopcao.add(newJTextField());pnlopcao.updateUI();}else{if(cboopcao.getSelectedItem().toString().equals("Tipo")){pnlopcao.removeAll();pnlopcao.add(newJComboBox(newString[]{"Importado","Fora do Estado","Estadual"}));pnlopcao.updateUI();}else{pnlopcao.removeAll();pnlopcao.updateUI();}}}/** * @param args the command line arguments */publicstaticvoidmain(Stringargs[]){java.awt.EventQueue.invokeLater(newRunnable(){publicvoidrun(){newJanelaProcura().setVisible(true);}});}// Declaração de variáveis - não modifique privatejavax.swing.JComboBoxcboopcao;privatejavax.swing.JButtoncmdverificar;privatejavax.swing.JLabeljLabel1;privatejavax.swing.JPanelpnlopcao;// Fim da declaração de variáveis }