Olá galera, olha eu aqui de novo…
Gostaria mais uma vez da ajuda de vocês…
Estou criando uma List onde ele não terá itens fixos, ele terá que pegar itens de um JTextField e adicionar na JList…
Nesse caso é um cadastramento de produtos, a pessoa digitará o nome, preço e descrição e irá clicar num botão para adicionar na lista, esses itens, então passarão para a JList…
Segue o código
[code]
import java.awt.;
import java.awt.event.;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
public class CadProduto extends JFrame implements ActionListener , ListSelectionListener{
JLabel lblNomeProduto, lblPrecoProduto, lblDescricaoProduto, lblListaProduto, lblRetornoLista;
JTextField txtNomeProduto, txtPrecoProduto;
JTextArea taDescricaoProduto;
JButton btAddListaProduto, btRemoveListaProduto, btSalvarProduto, btFecharProduto;
private final DefaultListModel listandoProduto = new DefaultListModel();
private JList listaProduto;
CadProduto(){
setTitle("Sistema ADM - Cadastramento de Produtos");
setSize(550,600);
setLocation(260,20);
setResizable(false);
//Inclusão de nomo do produto
lblNomeProduto = new JLabel("Nome do Produto");
lblNomeProduto.setBounds(5,10,120,20);
txtNomeProduto = new JTextField(100);
txtNomeProduto.setBounds(5,35,200,20);
//Inclusão de preço do produto
lblPrecoProduto = new JLabel("Preço do Produto");
lblPrecoProduto.setBounds(5,65,120,20);
txtPrecoProduto = new JTextField(10);
txtPrecoProduto.setBounds(5,90,200,20);
//Inclusão da descrição do produto
lblDescricaoProduto = new JLabel("Descrição do Produto");
lblDescricaoProduto.setBounds(5,120,200,20);
taDescricaoProduto = new JTextArea(10,25);
taDescricaoProduto.setBounds(5,145,200,200);
JScrollPane painel = new JScrollPane(taDescricaoProduto);
//Inclusão da lista de produtos
lblListaProduto = new JLabel("Lista de produtos adicionados");
lblListaProduto.setBounds(300,10,200,20);
listaProduto = new JList(listandoProduto);
listandoProduto.addElement("");
listaProduto.setModel(listandoProduto);
listaProduto.addListSelectionListener(this);
JScrollPane painelLista = new JScrollPane(listaProduto);
listaProduto.setBounds(300,35,230,315);
//Botão adicionar produtos da lista">>"
btAddListaProduto = new JButton(">>");
btAddListaProduto.setBounds(230,145,50,40);
//Botão remover produtos da lista"<<"
btRemoveListaProduto = new JButton("<<");
btRemoveListaProduto.setBounds(230,190,50,40);
//Botão para salvar produtos no BD... Ainda não mexi nele
btSalvarProduto = new JButton("Salvar Produto");
btSalvarProduto.setBounds(300,400,200,20);
//Botão para fechar janela
btFecharProduto = new JButton("Fechar");
btFecharProduto.setBounds(300,520,200,20);
//Retorno da lista selecionada
lblRetornoLista = new JLabel("");
lblRetornoLista.setBounds(300,360,200,20);
getContentPane().setLayout(null);
getContentPane().add(lblNomeProduto);
getContentPane().add(txtNomeProduto);
getContentPane().add(lblPrecoProduto);
getContentPane().add(txtPrecoProduto);
getContentPane().add(lblDescricaoProduto);
getContentPane().add(taDescricaoProduto);
getContentPane().add(painel);
getContentPane().add(lblListaProduto);
getContentPane().add(listaProduto);
getContentPane().add(painelLista);
getContentPane().add(btAddListaProduto);
getContentPane().add(btRemoveListaProduto);
getContentPane().add(btSalvarProduto);
getContentPane().add(btFecharProduto);
getContentPane().add(lblRetornoLista);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource()==btAddListaProduto)
{
listandoProduto.addElement(txtNomeProduto.getText()); // adiciona itens a lista
}
}
public void valueChanged(ListSelectionEvent e) {
if (listaProduto.getSelectedValue() != null)
{
if (listaProduto.getSelectedValue() != null)
lblRetornoLista.setText("Selecionado : "+ listaProduto.getSelectedValue());
}
}
}[/code]
Acredito que o erro esteja por aqui…
public void actionPerformed(ActionEvent e) {
if (e.getSource()==btAddListaProduto)
{
listandoProduto.addElement(txtNomeProduto.getText()); // adiciona itens a lista
}
}