19/10/2014, 12:01
|
| | | Fecha de Ingreso: julio-2013 Ubicación: Canet d'en Berenguer
Mensajes: 18
Antigüedad: 11 años, 4 meses Puntos: 0 | |
Guardar imagen en carpeta de proyecto JAVA Hola buena tardes,
estoy haciendo un programa en java con Netbenas para clase. Necesito elegir una imagen apretando un boton y previsualizándola en un jLabel, cosa que ya he hecho, pero quiero que al pulsar otro botón de guardar cambios dicha imagen me la guarde en una carpeta del proyecto llamada Imágenes. El evento del botón guardar os lo dejo aquí a ver si alguien pudiera ayudarme por favor.
Código:
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
//Valido si algún campo vacío y muestro mensaje de error if(c1.getText().equals("")||c2.getText().equals("")||c3.getSelectedIndex()==-1||c4.getText().equals("")||jLabel9.getIcon()==null){
JOptionPane.showMessageDialog(this,"Alguno de los campos está vacío. Introduzca de nuevo.");
}else{
//si no, abro conexión, creo sentencia y ejecuto la consulta
try {
con=new ConectaBBDD();
con.conecta();
con.crearSentencia();
consulta="SELECT * FROM Libros";
con.ejecutaSQL(consulta);
while(con.rs.next()){
//mientras que se muestren resultados compruebo que no existan en la tabla
if(c1.getText().equals(con.rs.getString(1))){
JOptionPane.showMessageDialog(this, "El registro ya esxiste en la tabla Libros.");
}else{
//si no existen capturo el contenido en variables y creo un nuevo objeto Libro que añado a la base de datos
String isbn,titulo,materia,descripcion,portada;
isbn=c1.getText();
titulo=c2.getText();
materia= codMateria.get(c3.getSelectedIndex());
descripcion=c4.getText();
portada=archivo;
Libro libro=new Libro(isbn,titulo,materia,descripcion,portada);
con.guardarLibro(libro);
//AQUÍ DEBERÍA COGER LA IMAGEN Y GUARDARLA EN LA CARPETA IMAGENES
if(con.guardarLibro(libro)==-1){
//si el método devuelve un valor -1 no se guarda y muestra error
JOptionPane.showMessageDialog(this, "Error al introducir libro.");
}else{
//si no, se guarda y muestra mensaje
JOptionPane.showMessageDialog(this, "Libro introducido correctamente.");
}
}
}
//cierro conexión
con.cerrarConexion();
} catch (SQLException ex) {
Logger.getLogger(Nuevo_registro.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
Este es el código que selecciona la imagen y la previsualiza en el jLabel:
Código:
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
JFileChooser fc=new JFileChooser();
fc.setFileFilter(filter);
int opcion=fc.showOpenDialog(this);
if(opcion==JFileChooser.APPROVE_OPTION){
String file=fc.getSelectedFile().getPath();
String f=fc.getSelectedFile().toString();
archivo=fc.getSelectedFile().getName();
jLabel9.setIcon(new ImageIcon(file));
ImageIcon icon=new ImageIcon(file);
Image img=icon.getImage();
Image newimg = img.getScaledInstance(jLabel9.getWidth(),jLabel9.getHeight(),java.awt.Image.SCALE_SMOOTH);
ImageIcon newIcon= new ImageIcon(newimg);
jLabel9.setIcon(newIcon);
jLabel9.setSize(jLabel9.getWidth(), jLabel9.getHeight());
}
}
Gracias por anticipado. Un saludo |