Pessoal boa tarde preciso da ajuda de vocês. tenho que realizar um projeto porem não sei por onde começar comecei a fazer porem apareceu muitos erros ao criar o arquivo de objetos.preciso de algumas dicas para realizar este projeto.
[color=red]o projeto é. [/color]
Criar um arquivo de objetos que contenha todos os nomes dos estados do Brasil.
Criar outro arquivo de objetos que contenha a sigla do estado e ao menos duas cidades correspondentes ao estado.
Monte a interface que ao selecionar um estado no JCombo exiba as cidades correspondentes em um JList.
Monte o programa para inserir os estados e as cidades no arquivo de objetos.
estou aguardando dicas.
até mais
uma ideia seria criar um arquivo txt e vc buscar essas informações do arquivo, pq tmb vai poder tmb ficar uma coisa mais dinamica…
e tmb quem sabe um banco de dados…
entendi ,mais a minha maior duvida como que eu iria fazer para ao selecionar um estado no JCombo exiba as cidades correspondentes em um JList.
vc pode utilizar primeiro uma busca (tanto faz, banco de dados ou arquivo txt) como todas as siglas dos estados, depois quando vc selecionar um estado vc faz uma busca pelas cidades que correspondem à aquele estado e mostra na lista…
ah Sim entendi vou tentar fazer aqui qualquer coisa eu faço mais algumas perguntas.
valew :!:
mais uma pergunta como adicionar as cidades na Jlist?e os estados no JcomboBox?
para o combobox DefaultComboBoxModel, e para a lista DefaultListModel, vc adiciona os elementos neles, e depois dai um setModel passando o modelo correspondente a cada um deles
se não for pedir muito faz um exemplo ai pra mim :?
Cidade cidade = new Cidade();
Estado estado = new Estado();
JList jList = new JList();
JComboBox jComboBox = new JComboBox();
DefaultComboBoxModel defaultComboBoxModel = new DefaultComboBoxModel();
defaultComboBoxModel.addElement(cidade);
DefaultListModel defaultListModel = new DefaultListModel();
defaultComboBoxModel.addElement(estado);
jList.setModel(defaultListModel);
jComboBox.setModel(defaultComboBoxModel);
esse cidade e estado vai ser os elementos que vc vai ter que buscar…
depois é só jogar em um laço para ir preenchendo estes models, depois é só setar no componente
cidade e estado vai ser os elementos que irei buscar no arquivo de objetos que vou ter todos os estados e todas as cidades?
isso, vai ficar + - nesse estilo
List<Estado> listaEstados = buscaEstados();
for(int i = 0; i < listaEstados; i ++){
defaultComboBoxModel.addElement(listaEstados.getNomeEstado());
}
jComboBox.setModel(defaultComboBoxModel);
vc vai ter que criar um método que busque e retorne uma lista de elementos (no caso eu dei um nome de Estado) e depois adicionar na lista, depois vc vai percorrer esta lista adicionando no model, depois vai setar este model no componente, esse esquema vai ser o mesmo pro list dae
cara eu comecei assim me corrija se estiver algo errado
criei primeiro a classe EstadosBrasil.
public class EstadosBrasil implements Serializable{
private String Acre;
private String Alagoas;
private String Amapá;
private String Amazonas;
private String Bahia; … nessa classe tem os metodos de acesso get ,set .
depois criei a classe ArquivoDeObjetos
package Pck_estados;
import java.util.ArrayList;
import java.io.*;
import javax.swing.JOptionPane;
public class ArquivoDeObjetos {
private String nomeArquivo;
private ArrayList EstadosBrasils;
int remover=0;
public ArquivoDeObjetos(String nomeArq) {
//inicializa os atributos
nomeArquivo=nomeArq;
EstadosBrasils = new ArrayList();
//inicialização:
//pesquisando os funcionarios no arquivo
try{
FileInputStream fis = new FileInputStream(getNomeArquivo());
ObjectInputStream in = new ObjectInputStream(fis);
int quant = in.readInt();
//Carregando os objetos encontrados
for(int i=0; i<quant; i++){
//Como a lista (ArrayList) aceita Object, não é necessário
Object f = in.readObject();
EstadosBrasils.add(f);
}
}catch(Exception ex){
System.out.println(ex.getMessage());
}
}
/**
* @return the nomeArquivo
*/
public String getNomeArquivo() {
return nomeArquivo;
}
/**
* @param nomeArquivo the nomeArquivo to set
*/
public void setNomeArquivo(String nomeArquivo) {
this.nomeArquivo = nomeArquivo;
}
}
depois criei um newJframe e inseria O JComboBox ate ai esta certo para adicionar somente os estados no JcomboBox ou falta algo?
eu te daria umas dicas de fazer essa classe EstadosBrasil assim:
String nome;
String sigla;
depois uma classe cidade
String nome;
EstadoBrasil estado;
entendeu ?
talvez assim fique mais fácil
criei primeiro a classe EstadosBrasil.
[code][b]
public class EstadosBrasil implements Serializable{
private String Acre;
private String Alagoas;
private String Amapá;
private String Amazonas;
private String Bahia;
[/code][/b]
depois criei a classe ArquivoDeObjetos
[code][b]
package Pck_estados;
import java.util.ArrayList;
import java.io.*;
import javax.swing.JOptionPane;
public class ArquivoDeObjetos {
private String nomeArquivo;
private ArrayList EstadosBrasils;
int remover=0;
public ArquivoDeObjetos(String nomeArq) {
//inicializa os atributos
nomeArquivo=nomeArq;
EstadosBrasils = new ArrayList();
//inicialização:
//pesquisando os funcionarios no arquivo
try{
FileInputStream fis = new FileInputStream(getNomeArquivo());
ObjectInputStream in = new ObjectInputStream(fis);
int quant = in.readInt();
//Carregando os objetos encontrados
for(int i=0; i<quant; i++){
//Como a lista (ArrayList) aceita Object, não é necessário
Object f = in.readObject();
EstadosBrasils.add(f);
}
}catch(Exception ex){
System.out.println(ex.getMessage());
}
}
/**
-
@return the nomeArquivo
*/
public String getNomeArquivo() {
return nomeArquivo;
}
/**
-
@param nomeArquivo the nomeArquivo to set
*/
public void setNomeArquivo(String nomeArquivo) {
this.nomeArquivo = nomeArquivo;
}
}
[/code][/b]
depois criei um newJframe e inseri O JComboBox ate ai esta certo para adicionar somente os estados no JcomboBox ou falta algo?