Boa tarde pessoal, beleza.
Preciso de uma ajuda, não sei como colocar o conteudo de uma linha selecionada da Jlist de uma tela de busca e envia-la para uma tela de edição.
Tentei usar o getselectvalues em um evento do botao da tela de busca para fazer , só que não sei como setar os textfields da tela de editar com um object que retorna do metodo getselectvalues.
Alguem tem alguma dica ?pesquisei pelos foruns e não encontrei nada.
Valeu abraços.
Linha de uma JList editar em uma outra janela
3 Respostas
Se os objetos que estão contidos em sua lista forem String’s, basta só dar um Casting no objeto selecionado .
textField.setText( (String) lista.getSelectedValue());//Retorna o valor selecionado e o converte em uma String
Espero que ajude.
Obrigado por ter respondido.
só que o problema é que eu estou trabalhando com um objeto com o metodo to string() todos os varios campos do objeto(nome, telefone email) estão em uma unica celula da jlist.
tentei fazer oque você sugeriu, tentei passar com parametro para a classe da tela de excluir mas não deu.
segue meu codigo abaixo, se puderem dar uma luz para isso valeu.
package telas.agenda;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Iterator;
import javax.swing.*;
import Conexao.Conexao;
import java.awt.event.*;
import beans.AgendaTelefonica;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.Statement;
public class TelaBuscarNomes extends JFrame {
private JLabel JLnome;
private JTextField JTnome;
private JButton JBConfirmar,JBExcluir,JBEditar, JBCancelar;
public TelaBuscarNomes() {
super("Tela Buscar Cadastro Completo");
this.setVisible(false);
this.setBounds(400, 200, 700, 450);
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
this.getContentPane().setLayout(new GridLayout(3, 2));
JPanel JPanelGeral = new JPanel();
JPanel JPanelFormulario = new JPanel();
JPanel JPanelBotoes = new JPanel();
JPanel JPanelBotoesAuxiliares=new JPanel();
final JList lista = new JList();
lista.setLayoutOrientation(JList.HORIZONTAL_WRAP);
lista.setVisibleRowCount(0);
JScrollPane scroll=new JScrollPane(lista);
JLnome = new JLabel("Procurar Nome: ");
JTnome = new JTextField("", 25);
JPanelFormulario.add(JLnome);
JPanelFormulario.add(JTnome);
JBConfirmar = new JButton("Buscar");
JBConfirmar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
String auxNome=JTnome.getText();
try {
Connection con = null;
con = (Connection) Conexao.getConnection();
Statement stm = (Statement) con.createStatement();
ResultSet rs=null;
ArrayList<String> resultados = new ArrayList<String>();
rs= stm.executeQuery("SELECT * FROM agendatelefonica where de_nome like '%"+auxNome+"%' ");
ArrayList<String> resultadosIt = new ArrayList<String>();
while(rs.next()){
AgendaTelefonica agenda=new AgendaTelefonica();
agenda.setId(Integer.parseInt(rs.getString("cd_id")));
agenda.setNome(rs.getString("de_nome"));
agenda.setTelefoneResidencial(rs
.getString("de_telefoneresidencial"));
agenda.setTelefoneComercial(rs
.getString("de_telefonecomercial"));
agenda.setCelular1(rs.getString("de_celular1"));
agenda.setCelular2(rs.getString("de_celular2"));
agenda.setEmail1(rs.getString("de_email1"));
resultadosIt.add(agenda.toString());
}
Iterator it = resultadosIt.iterator();
DefaultListModel model = new DefaultListModel();
lista.setModel(model);
while (it.hasNext()) {
String itemLista = (String) it.next();
model.addElement(itemLista);
}
rs.close();
stm.close();
con.close();
} catch (SQLException e1) {
e1.printStackTrace();
}
}
}
);
JPanelBotoes.add(JBConfirmar);
JBCancelar = new JButton("Fechar");
JBCancelar.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent arg0) {
dispose();
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
}
);
JBEditar=new JButton("Editar Cadastro");
JBEditar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
Object agenda=lista.getSelectedValues();
TelaEditarCadastro tela=new TelaEditarCadastro();
tela.setVisible(true);
}
});
JPanelBotoesAuxiliares.add(JBEditar);
JBExcluir=new JButton("Excluir Cadastro");
JPanelBotoesAuxiliares.add(JBExcluir);
JPanelBotoes.add(JBCancelar);
JPanelGeral.add(JPanelFormulario);
JPanelGeral.add(JPanelBotoes);
JPanelGeral.add(JPanelBotoesAuxiliares);
this.getContentPane().add(JPanelGeral);
this.getContentPane().add(scroll);
}
}
Resolvi com a dica que voçe deu obrigado!
Criado 22 de dezembro de 2010
Ultima resposta 4 de jan. de 2011
Respostas 3
Participantes 2