Pessoal
estou com um trabalho da facul pra entregar... nao estou conseguindo fazer uma parte
Preciso que quando a pessoa selecionar o estado em um JComboBox, eles lista as cidades em um JList. Depois ele escolhe a cidade e clica no botão adicionar, que vai setar no JLista cadastros o Nome+estado+cidade .
A interface está toda pronta, estou memso com duvida é como criar esta matrix estado/cidade e como adicionar um evento ao JComboBox que vai exibirs as cidades do respectivo estado.
segue o codigo e o exercicio, se alguem conseguir ajudar fico grato
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.WindowConstants;
public class ProvaResolvida1 {
/**
* ATP 3
* Guilherme Marques Eloi
* RA: 00110295
*/
public static void main(String[] args) {
int l=0,c=0;
String cadastro[][] = new String [6][6];
cadastro[0][0] = "RJ";
cadastro[1][0] = "RJ";
cadastro[0][1] = "Rio";
cadastro[1][1] = "Parati";
cadastro[2][0] = "SP";
cadastro[3][0] = "SP";
cadastro[2][1] = "Sao Paulo";
cadastro[3][1] = "Piracicaba";
cadastro[4][0] = "MG";
cadastro[5][0] = "MG";
cadastro[4][1] = "BH";
cadastro[5][1] = "Divinopolis";
JFrame janela = new JFrame("janela 001");
janela.setBounds(400,200,340,400);
janela.setLayout(null);
janela.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
JLabel lblnome = new JLabel("Nome:");
lblnome.setBounds(5,5,80,20);
janela.add(lblnome);
JLabel lblestado = new JLabel("Estado:");
lblestado.setBounds(5,35,80,20);
janela.add(lblestado);
JLabel lblcidade = new JLabel("Cidade:");
lblcidade.setBounds(5,65,80,20);
janela.add(lblcidade);
JLabel lblcadastros = new JLabel("Cadastros:");
lblcadastros.setBounds(5,205,80,20);
janela.add(lblcadastros);
final JTextField txtnome = new JTextField();
txtnome.setBounds(70,5,150,20);
janela.add(txtnome);
JButton btnadd = new JButton("Adicionar");
btnadd.setBounds(225,5,100,20);
janela.add(btnadd);
final JComboBox comboestado = new JComboBox();
comboestado.setBounds(70,35,255,20);
janela.add(comboestado);
JScrollPane rolacidade = new JScrollPane();
rolacidade.setBounds(70,70,240,140);
janela.add(rolacidade);
final JList listacidade = new JList();
listacidade.setBounds(70,70,240,140);
janela.add(listacidade);
JScrollPane rolacadastros = new JScrollPane();
rolacadastros.setBounds(70,215,240,140);
janela.add(rolacadastros);
JList listcadastros = new JList();
listcadastros.setBounds(70,215,240,140);
janela.add(listcadastros);
//fazendo com que o cadastro da matriz seja colocado do COMBO
c=0;
while(l<6){
comboestado.addItem(cadastro[l][c]);
l=l+2;
}
txtnome.addFocusListener(new FocusListener() {
public void focusGained(FocusEvent e) {
txtnome.setBackground(Color.ORANGE);
}
public void focusLost(FocusEvent e) {
txtnome.setBackground(Color.WHITE);
}
});
comboestado.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent arg0) {
//O QUE FAÇO AQUI DENTRO ?
}
});
janela.setVisible(true);
}
}
