Fala, pessoal do GUJ!
Tudo beleza??
Estou com um pequeno probleminha…
Creio que vocês podem me ajudar! rs
É o seguinte… Tenho uma Tela Manager. Ela possui alguns botões para cadastro, alteração, remoção e tals.
Olha ela aí:
public class MaquinasManageDialog extends BaseManageDialog {
private JTextField pesquisaTextBox;
public MaquinasManageDialog() {
this.setTitle(".: Gerenciamento de Máquinas :.");
this.initComponents();
}
@Override
public void initComponents() {
super.initComponents();
super.labelList.add(new JLabel("Digite o nome da máquina:"));
this.pesquisaTextBox = new JTextField(15);
super.componentList.add(this.pesquisaTextBox);
this.setTableModel();
}
@Override
public void pesquisarButton_onClick(ActionEvent e) {
try {
((MaquinasTableModel) super.tableModel).list(new Maquina());
}
catch (Exception anyError) {
}
}
@Override
public void inserirButton_onClick(ActionEvent e) {
// Aqui é onde a tela de cadastros é instanciada!
BaseDialog mfd = new MaquinasFormDialog();
mfd.showDialog();
// Devo fazer alguma coisa aqui? Retornar algum valor?
}
@Override
public void alterarButton_onClick(ActionEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void removerButton_onClick(ActionEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
}
@Override
public void setTableModel() {
List<Maquina> maquinas = new ArrayList<Maquina>();
maquinas.add(new Maquina(new Long(1), "Máquina 1"));
maquinas.add(new Maquina(new Long(2), "Máquina 2"));
maquinas.add(new Maquina(new Long(3), "Máquina 3"));
maquinas.add(new Maquina(new Long(4), "Máquina 4"));
maquinas.add(new Maquina(new Long(5), "Máquina 5"));
super.tableModel = new MaquinasTableModel(maquinas);
super.itensTable.setModel(super.tableModel);
}
}
Beleza…
Daí, eu tenho uma tela de cadastro de máquinas, no caso!
public class MaquinasFormDialog extends BaseFormDialog {
private Maquina maquina;
private JTextField codigoMaquinaTextBox;
private JTextField nomeMaquinaTextBox;
public MaquinasFormDialog() {
this.setTitle(".: Cadastro de Máquinas :.");
this.initComponents();
}
@Override
public void initComponents() {
super.initComponents();
super.labelList.add(new JLabel("Código da Máquina:"));
super.labelList.add(new JLabel("Nome da Máquina:"));
this.codigoMaquinaTextBox = new JTextField(5);
super.componentList.add(this.codigoMaquinaTextBox);
this.nomeMaquinaTextBox = new JTextField(15);
super.componentList.add(this.nomeMaquinaTextBox);
}
@Override
public void confirmarButton_onClick(ActionEvent e) {
this.maquina = new Maquina();
this.maquina.setId(new Long(this.codigoMaquinaTextBox.getText().toString()));
this.maquina.setNome(this.nomeMaquinaTextBox.getText().toString());
// Como chamar aqui o TableModel lá da JTable presente na classe Manager?
}
@Override
public void cancelarButton_onClick(ActionEvent e) {
try {
dispose();
}
catch (Exception anyError) {
JOptionPane.showMessageDialog(this, anyError.getMessage());
}
}
No meu MaquinasTableModel, tenho o seguinte método:
public void insert(Maquina maquina) throws Exception {
this.maquinas.add(maquina);
// Adiciona o objeto máquina no banco.
this.fireTableRowsInserted(this.maquinas.size(), this.maquinas.size());
}
Beleza… Mas, como posso fazer para, na minha tela de Cadastro, chamar o método insert, visto que ele pertence ao TableModel de uma JTable presente lá na minha tela Manager?
Desde já, grato pela atenção de vocês!
[]s
