Baixe o app para aproveitar ainda mais
Prévia do material em texto
Abaixo segue o código de criação da lista com um exemplo. Caixas de Opção São caixas de seleção onde o usuário escolhe opções. Podem ser exclusivas ou não exclusivas. Utilizamos o objeto Checkbox. Este objeto recebe três parâmetros, sendo o primeiro uma String com o texto que será apresentado, o segundo com o grupo da seleção e o terceiro se a opção está ou não marcada. O grupo de seleção define se a caixa será Exclusiva ou não Exclusiva Não exclusivas Definimos o parâmetro do grupo como null e o usuário poderá marcar quantas opções quiser. Exclusivas Para criar um grupo de opções, temos que criar um objeto de grupo, chamado CheckboxGroup. Criamos um objeto deste tipo e no segundo parâmetro dos objetos deste grupo, utilizaremos o objeto criado. Veja o código do exemplo abaixo para entender melhor o exposto. private void initialize() { setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); setPreferredSize(new Dimension(400, 200)); layout = new GridBagLayout(); // setLayout(layout); getContentPane().setLayout(layout); String[] itens = {"Um", "Dois", "Tres", "Quatro", "Cinco"}; JList lEsq = new JList(itens); //Cria uma lista de valores String Com Multiplas opções lEsq.setSelectionMode(ListSelectionModel.SINGLE_SELECTION); GridBagConstraints restricoes = new GridBagConstraints(); restricoes.gridx = 0; restricoes.gridy = 0; restricoes.gridwidth = 1; restricoes.gridheight = 3; restricoes.fill = GridBagConstraints.VERTICAL; add(lEsq, restricoes); Checkbox checkbox1 = new Checkbox("Escolha 1", null, false); Checkbox checkbox2 = new Checkbox("Escolha 2", null, false); Checkbox checkbox3 = new Checkbox("Escolha 3", null, false); Checkbox checkbox4 = new Checkbox("Escolha 4", null, false); Insets margens = new Insets(4, 3, 4, 3); restricoes.gridx = 1; restricoes.gridy = 0; restricoes.gridwidth = 1; restricoes.gridheight = 1; restricoes.fill = GridBagConstraints.BOTH; restricoes.ipadx = 2; restricoes.ipady = 2; restricoes.insets = margens; add(checkbox1, restricoes); restricoes.gridy = 1; add(checkbox2, restricoes); restricoes.gridy = 2; add(checkbox3, restricoes); restricoes.gridy = 3; add(checkbox4, restricoes); CheckboxGroup grupo = new CheckboxGroup(); Checkbox checkbox10 = new Checkbox("Escolha 1", grupo, false); Checkbox checkbox20 = new Checkbox("Escolha 2", grupo, false); Checkbox checkbox30 = new Checkbox("Escolha 3", grupo, false); Checkbox checkbox40 = new Checkbox("Escolha 4", grupo, false); restricoes.gridx = 2; restricoes.gridy = 0; add(checkbox10, restricoes); restricoes.gridy = 1; add(checkbox20, restricoes); restricoes.gridy = 2; add(checkbox30, restricoes); restricoes.gridy = 3; add(checkbox40, restricoes); pack(); } /** 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. */ @SuppressWarnings("unchecked") // <editor-fold defaultstate="collapsed" desc="Generated Code"> private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); jList1 = new javax.swing.JList(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jList1.setModel(new javax.swing.AbstractListModel() { String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" }; public int getSize() { return strings.length; } public Object getElementAt(int i) { return strings[i]; } }); jScrollPane1.setViewportView(jList1); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(46, 46, 46) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 101, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(253, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addGap(38, 38, 38) .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 107, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(155, Short.MAX_VALUE)) ); pack(); }// </editor-fold> Apresentamos apenas um trecho do código que contempla a criação da lista e das caixas de seleção.
Compartilhar