Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: blackjack21 en 30 de Octubre 2015, 07:21

Título: Java invocar la acción de un Botón (JButton) al pulsar otro botón.
Publicado por: blackjack21 en 30 de Octubre 2015, 07:21
Saludos desde Venezuela.  ;)

Estoy conectando a una base de datos MySQL con wampserver desde eclipse(versión: mars) con Java y solicitó su ayuda en los siguiente: Como apenas soy un novato la aplicación que estoy realizando es simplemente para hacer consultas y modificaciones básicas a la base de datos, ya he podido realizarlas correctamente. La cuestión es que en mi interfaz tengo un botón para limpiar los JtextField y otras cosas, y quiero poder invocar las acciones que ese botón realiza al presionar "otro botón" de mi interfaz.

En concreto: Quiero que al presionar el botón "Agregar" me agregue el registro a la BD pero que también limpie las cajas de texto como si yo hubiera presionado el botón "Limpiar".

Nota: No puedo usar el método doClick() ya que al momento de agregar el registro el botón limpiar está deshabilitado.

Agradecere mucho la ayuda que me puedan brindar al respecto.

Código: [Seleccionar]
btnAceptar = new JButton("Aceptar");
btnAceptar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
btnCancelar.setVisible(false);
btnLimpiar.setVisible(false);

/* Deberia poder Invocar al boton limpiar y no usar de nuevo todo este codigo*/
texMatri.setText("");
texNom.setText("");
texGrado.setText("");
texDirec.setText("");
texTelf.setText("");
texNacion.setText("");
texEstatus.setText("");
texMatri.setEditable(true);
texNom.setEditable(false);
texGrado.setEditable(false);
texDirec.setEditable(false);
texNacion.setEditable(false);
texTelf.setEditable(false);
btnAgregar.setEnabled(true);
btnBuscar.setEnabled(true);
btnLimpiar.setEnabled(false);
btnEliminar.setEnabled(false);
texMatri.setEditable(true);
/**/

String nombre = texNom.getText();
int grado = Integer.parseInt(texGrado.getText());
String telf = texTelf.getText();
String dir = texDirec.getText();
String naci = texNacion.getText();
String esta = texEstatus.getText().toLowerCase();

try {
Class.forName("com.mysql.jdbc.Driver");
java.sql.Connection conexion = DriverManager.getConnection("jdbc:mysql://***:***/universidad", "***", "***");
java.sql.Statement statement = conexion.createStatement();

String Query = ("INSERT INTO alumnos(nombre,grado,telefono,direccion,nacionalidad,estatus) values('"+nombre+"','"+grado+"','"+telf+"','"+dir+"','"+naci+"','"+esta+"')");

((java.sql.Statement)statement).executeUpdate(Query);

conexion.close();

} catch (ClassNotFoundException e8) {
// TODO: handle exception
e8.printStackTrace();
} catch (SQLException e2) {
// TODO: handle exception
e2.printStackTrace();
}

btnAceptar.setVisible(false);
btnAgregar.setVisible(true);

}
});
btnAceptar.setBounds(304, 76, 97, 25);
btnAceptar.setVisible(false);
frmAlumnosUniversidad.getContentPane().add(btnAceptar);
Título: Re:Invocar la acción de un Botón (JButton) al pulsar Otro Botón.
Publicado por: Mastermind en 01 de Noviembre 2015, 21:50
Hola parece que lo único que necesitaras es crear un método que al invocarlo haga la limpieza:

Código: [Seleccionar]
public void limpiar() {
    /* Deberia poder Invocar al boton limpiar y no usar de nuevo todo este codigo*/
texMatri.setText("");
texNom.setText("");
texGrado.setText("");
texDirec.setText("");
texTelf.setText("");
texNacion.setText("");
texEstatus.setText("");
texMatri.setEditable(true);
texNom.setEditable(false);
texGrado.setEditable(false);
texDirec.setEditable(false);
texNacion.setEditable(false);
texTelf.setEditable(false);
btnAgregar.setEnabled(true);
btnBuscar.setEnabled(true);
btnLimpiar.setEnabled(false);
btnEliminar.setEnabled(false);
texMatri.setEditable(true);
/**/
  }

Este método lo puedes llamar y así cada vez que escribes limpiar() es como si ejecutaras todo el código, no tienes que repetirlo sino invocar al método

;)
Título: Re:Java invocar la acción de un Botón (JButton) al pulsar otro botón.
Publicado por: Alex Rodríguez en 02 de Noviembre 2015, 09:34
Recomendamos seguir este curso para aclarar conceptos: http://aprenderaprogramar.com/index.php?option=com_content&view=category&id=68&Itemid=188

Saludos
Título: Re:Java invocar la acción de un Botón (JButton) al pulsar otro botón.
Publicado por: blackjack21 en 05 de Noviembre 2015, 17:06
Muy Agradecido Mastermind. No puedo creer lo sencillo que era  ;D

Alex Rodriguez gracias me voy a apuntar a ese curso.

Saludos y Gracias!