Olá…
Tenho uma janela principal e uma janela de cadastro (Jan_Principal.java) e (Jan_Cadastro_Produto.java)… Dentro da janela principal eu tenho uma comboBox que será alimentado com os itens cadastrados na janela de cadastro:
[code] public void AlimentarComboProdutosPrincipal() {
int i;
combo_gasto_prod.removeAllItems();
for (i = 0; bd.produtos[i] != null; i++) {
combo_gasto_prod.addItem(bd.produtos[i].getNome() + " - " + bd.produtos[i].getLoja());
}
}[/code]
Obs: nao estou utilizando banco de dados ainda… uma classe “bd” que é estática
Só que esse método está sendo chamado apenas no construtor do programa… Ou seja, os produtos que eu cadastrar após o programa não aparecem na comboBox…Eis o código de cadastro:
[code] private void botaoCadProdutoActionPerformed(java.awt.event.ActionEvent evt) {
try {
if(combo_Lojas.getSelectedItem().toString().equals("")){
JOptionPane.showMessageDialog(null, "Selecione uma loja válida!");
}else{
Produto p = new Produto(combo_cad_prod_unid.getSelectedItem().toString(),bd.lojas[combo_Lojas.getSelectedIndex()].getNome(), campo_Cad_Nome.getText(), Double.parseDouble(campo_Cad_Preco.getText()));
bd.produtos[bd.countProdutos] = p;
bd.countProdutos++;
JOptionPane.showMessageDialog(null, "Cadastro realizado com sucesso!");
}
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Verifique os dados entrados");
}
}[/code]
Eu precisaria de chamar o método de Jan_Principal (AlimentarComboProdutosPrincipal) nesta janela, para que alimente a combo… Porém não da certo… A “Jan_Principal” é também a classe principal do projeto, substitui:
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new Jan_Principal().setVisible(true);
}
});
}
por:
[code] public static void main(String args[]) {
Jan_Principal Jprincipal = new Jan_Principal();
Jprincipal.setVisible(true);
}[/code]
Para tentar manipular a objeto como “Jprincipal” na outra janela e tentar executar o método ao fazer:
Jprincipal.AlimentarComboProdutosPrincipal();
Porem também nao deu certo… Alguma solução?
Abraços