1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Como criar uma lista nos itens de um JComboBox

OLá galera blz? Então minha duvida é a seguinte: Estou desenvolvendo uma tela onde tenho algumas combos e duas Jlists gostaria de quando eu clicar no item 1 de uma das combo me retornasse na JList uma lista com itens refente ao item da combo !EXEMPLO: (comboSupermercado tem item Alimento)Quando clicasse em alimento retornasse na JList uma lista com Arroz, feijão, sal... Sem o uso de banco de dados ! pode ser de um arquivo TXT por exemplo, se alguem poder me dar algumas dicas de como fazer ou onde devo pesquisar eu agradeço!!

Segue o código da aplicação !

import javax.swing.JButton;    import javax.swing.JList;    import java.awt.event.MouseAdapter;   import java.awt.event.MouseEvent;    import java.io.BufferedReader;   import java.io.File;    import java.io.FileInputStream;   import java.io.FileNotFoundException;   import java.io.FileOutputStream;    import java.io.IOException;    import java.io.InputStreamReader;    import java.io.ObjectOutputStream;    import java.util.ArrayList;   import java.util.Collections;   import java.util.Set; import javax.swing.ListSelectionModel;   import javax.swing.ScrollPaneLayout;   import javax.swing.UIManager;   import javax.swing.UIManager.LookAndFeelInfo;   import javax.swing.UnsupportedLookAndFeelException;   import java.awt.event.ActionListener;   import java.awt.event.ActionEvent;   import javax.swing.JScrollPane;   import javax.swing.JScrollBar;   import java.awt.GridLayout;   import java.awt.ScrollPane;    import java.awt.Scrollbar;

import javax.swing.JComboBox;    import java.awt.FlowLayout;   import javax.swing.GroupLayout;   import javax.swing.GroupLayout.Alignment;   import javax.swing.LayoutStyle.ComponentPlacement;   import javax.swing.JTextField;    import javax.swing.DefaultComboBoxModel; import java.awt.ComponentOrientation;   import javax.swing.border.LineBorder;    import java.awt.Color;    import javax.swing.border.BevelBorder;

public class Ctag extends JFrame implements ActionListener{


     DefaultListModel lista1;
     DefaultListModel lista2;

    private JPanel contentPane;
    private JTextField txtNovatag;

         public static void main(String[] args){

                 EventQueue.invokeLater(new Runnable(){             public void run(){
                try{
                    Ctag frame = new Ctag();
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }             }         });     }

    public Ctag(){ 

                 try { 
                         for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {

                if ("Nimbus".equals(info.getName())) {
                 try {
                    UIManager.setLookAndFeel(info.getClassName());
                } catch (ClassNotFoundException | InstantiationException | IllegalAccessException e) {
                    e.printStackTrace();
                }
                 break; 
                 }
             }         } catch (UnsupportedLookAndFeelException e) {
                              }




                     setTitle("Cadastro de Tags - IPANFLETOS");         setType(Type.NORMAL);         setResizable(false);         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);         setBounds(100, 100, 710, 498);         lista1 = new DefaultListModel();         lista2 = new DefaultListModel();


                 contentPane = new JPanel();         contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));         setContentPane(contentPane);
              //_---------------------------------------------------------------------------------------------------------------LISTA                 JList list1   = new JList(lista1);         list1.setSelectedIndices(new int[] {1});         list1.setBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null));         JList list2 = new JList(lista2);         list2.setBorder(new BevelBorder(BevelBorder.LOWERED, null, null, null, null));


                 DefaultListModel modelo = new DefaultListModel();                 txtNovatag = new JTextField();         txtNovatag.setColumns(10);
        DefaultListModel def  = new DefaultListModel();         JSeparator separator = new JSeparator(); //-----------------------------------------------------------------------------------------------------------------BOTÕES                 JButton btnNext = new JButton("Next >");         JButton    btnNovatag = new JButton("Add nova tag");         JButton btnLimpar_1 = new JButton("Limpar");         JButton btnGerar = new JButton("Gerar");         JButton btnSair = new JButton("Sair");         btnSair.addActionListener(new ActionListener() {             public void actionPerformed(ActionEvent e) {

                JOptionPane sair = new JOptionPane();
                int fecha = JOptionPane.showConfirmDialog(null, "Deseja sair do programa");
                if (fecha == JOptionPane.YES_OPTION) {
                    System.exit(fecha);

                }             }         });          //--------------------------------------------------------------------------------------------------- COMBOS                     JComboBox comboBox1 = new JComboBox();         comboBox1.setToolTipText("");         comboBox1.setModel(new DefaultComboBoxModel(new String[] 
                {"Supermercado", "Alimento", "Banheiro", "Brinquedo", "Cozinha"}));         JComboBox comboBox2 = new JComboBox();         comboBox2.setModel(new DefaultComboBoxModel(new String[]
                {"Eletronicos"}));         JComboBox comboBox3 = new JComboBox();         comboBox3.setModel(new DefaultComboBoxModel(new String[] 
                {"Pet Shop"}));         JComboBox comboBox4 = new JComboBox();         comboBox4.setModel(new DefaultComboBoxModel(new String[] 
                {"Drogarias"}));         JComboBox comboBox5 = new JComboBox();         comboBox5.setModel(new DefaultComboBoxModel(new String[] 
                {"Beleza"}));         JComboBox comboBox6 = new JComboBox();         comboBox6.setModel(new DefaultComboBoxModel(new String[] 
                {"Restaurantes"}));         JComboBox comboBox7 = new JComboBox();         comboBox7.setToolTipText("Shoppings");
                 JComboBox comboBox8 = new JComboBox();         comboBox8.setToolTipText("Bebe");
                 JComboBox comboBox9 = new JComboBox();         comboBox9.setToolTipText("Moda");
                 JComboBox comboBox10 = new JComboBox();         comboBox10.setToolTipText("");
                 JComboBox comboBox11 = new JComboBox();         comboBox11.setToolTipText("");
                 JButton btnIserir = new JButton("Iserir");         btnIserir.addActionListener(new ActionListener() {             public void actionPerformed(ActionEvent e) {
                DefaultListModel model = new DefaultListModel();




                             }         }); //--------------------------------------------------------------------------------------------------------------------------------------|LAYOUTS                 GroupLayout gl_contentPane = new GroupLayout(contentPane);         gl_contentPane.setHorizontalGroup(             gl_contentPane.createParallelGroup(Alignment.LEADING)
                .addGroup(gl_contentPane.createSequentialGroup()
                    .addComponent(comboBox1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox3, GroupLayout.PREFERRED_SIZE, 89, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox4, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox5, GroupLayout.PREFERRED_SIZE, 88, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox6, 0, 113, Short.MAX_VALUE))
                .addGroup(gl_contentPane.createSequentialGroup()
                    .addContainerGap()
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
                        .addGroup(gl_contentPane.createSequentialGroup()
                            .addGroup(gl_contentPane.createParallelGroup(Alignment.LEADING)
                                .addGroup(gl_contentPane.createSequentialGroup()
                                    .addComponent(list1, GroupLayout.PREFERRED_SIZE, 297, GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(ComponentPlacement.RELATED, 89, Short.MAX_VALUE)
                                    .addComponent(list2, GroupLayout.PREFERRED_SIZE, 280, GroupLayout.PREFERRED_SIZE))
                                .addGroup(gl_contentPane.createSequentialGroup()
                                    .addComponent(btnNext, GroupLayout.PREFERRED_SIZE, 255, GroupLayout.PREFERRED_SIZE)
                                    .addGap(18)
                                    .addComponent(txtNovatag, GroupLayout.PREFERRED_SIZE, 164, GroupLayout.PREFERRED_SIZE)
                                    .addGap(18)
                                    .addComponent(btnNovatag, GroupLayout.DEFAULT_SIZE, 211, Short.MAX_VALUE))
                                .addGroup(gl_contentPane.createSequentialGroup()
                                    .addComponent(btnLimpar_1, GroupLayout.PREFERRED_SIZE, 109, GroupLayout.PREFERRED_SIZE)
                                    .addGap(29)
                                    .addComponent(btnGerar, GroupLayout.PREFERRED_SIZE, 114, GroupLayout.PREFERRED_SIZE)
                                    .addPreferredGap(ComponentPlacement.RELATED, 364, Short.MAX_VALUE)
                                    .addComponent(btnSair)))
                            .addPreferredGap(ComponentPlacement.RELATED))
                        .addComponent(separator, GroupLayout.DEFAULT_SIZE, 672, Short.MAX_VALUE))
                    .addContainerGap())
                .addGroup(gl_contentPane.createSequentialGroup()
                    .addComponent(comboBox7, GroupLayout.PREFERRED_SIZE, 115, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox8, GroupLayout.PREFERRED_SIZE, 115, GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(ComponentPlacement.UNRELATED)
                    .addComponent(comboBox9, GroupLayout.PREFERRED_SIZE, 115, GroupLayout.PREFERRED_SIZE)
                    .addPreferredGap(ComponentPlacement.UNRELATED)
                    .addComponent(comboBox10, GroupLayout.PREFERRED_SIZE, 115, GroupLayout.PREFERRED_SIZE)
                    .addGap(18)
                    .addComponent(comboBox11, GroupLayout.PREFERRED_SIZE, 115, GroupLayout.PREFERRED_SIZE)
                    .addGap(59))
                .addGroup(gl_contentPane.createSequentialGroup()
                    .addContainerGap()
                    .addComponent(btnIserir)
                    .addContainerGap(598, Short.MAX_VALUE))         );         gl_contentPane.setVerticalGroup(             gl_contentPane.createParallelGroup(Alignment.LEADING)
                .addGroup(gl_contentPane.createSequentialGroup()
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                        .addComponent(comboBox1, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox2, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox3, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox4, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox5, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox6, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(ComponentPlacement.RELATED)
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                        .addComponent(comboBox7, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox8, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox9, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox10, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)
                        .addComponent(comboBox11, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
                    .addPreferredGap(ComponentPlacement.RELATED)
                    .addComponent(btnIserir)
                    .addGap(12)
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE, false)
                        .addComponent(list1, GroupLayout.PREFERRED_SIZE, 242, GroupLayout.PREFERRED_SIZE)
                        .addComponent(list2, GroupLayout.PREFERRED_SIZE, 242, GroupLayout.PREFERRED_SIZE))
                    .addGap(18)
                    .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                        .addComponent(btnNext)
                        .addComponent(txtNovatag, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE)

                         .addComponent(btnNovatag))
                     .addGap(19)
                     .addComponent(separator, GroupLayout.PREFERRED_SIZE, 12, GroupLayout.PREFERRED_SIZE)
                     .addPreferredGap(ComponentPlacement.RELATED)
                     .addGroup(gl_contentPane.createParallelGroup(Alignment.BASELINE)
                         .addComponent(btnSair)
                         .addComponent(btnGerar)
                         .addComponent(btnLimpar_1))
                     .addContainerGap())         );         contentPane.setLayout(gl_contentPane); //---------------------------------------------------------------             }

     @Override     public void actionPerformed(ActionEvent arg0) {

              } }
  • Cade seu codigo

    Krismorte   07 de dez de 2015
  • Olha o codigo ae amigo !! Desculpe-me se estiver desorganizado.. abraço !

    Junior Costa   08 de dez de 2015
  • ja tentou usar as tags para postar código? ta de brincadeira postar um negocio desse ai, neh?!

    RenanBrito29   09 de dez de 2015
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags java ou faça a sua própria pergunta.