Antes de nada, os comento que es lo que quiero hacer:
Necesito hacer una subrutina de un programa que, mediante el boton de guardar, abra un JFileChooser para que el usuario pueda elegir libremente el lugar donde quiere almacenar el fichero que ha creado con el programa, de tal manera que si este no existe, lo cree, pero que si éste existe pregunte, antes de sobreescribirlo, si se desea reemplazar el archivo existente.
Pues bien... hasta aquí he conseguido llegar, pero quería dar un pasito más, y es el que no consigo encontrar manera de hacerlo. El pasito es el siguiente:
Cuando lanzo el JFileChooser con ShowSaveDialog() me lanza la ventana que una vez se pulsa en aceptar o cancelar se cierra, de tal manera que aunque abra el mensaje de si se desea reescribir el archivo, el JFileChooser ya no es visible, y esa es la cuestión, me gustaría que esa ventana fuese visible el tiempo que permanece el mensaje de reescritura del archivo.
No se si me explico, pero un ejemplo de lo que quiero conseguir es lo que hace el Paint cuando pinchas sobre guardar como y guardas un dibujo con el mismo nombre de otro ya existente.
A continuación os paso el código del la función encargada de esta tarea, por si os sirve de algo, aunque no me importaría cambiar todo el código que haga falta:
Código PHP:
private DialogoSobreescribir dialogosobreescribir = new DialogoSobreescribir(this, true);
private JFileChooser filechooser = new JFileChooser();
private JFrame framepadre = new JFrame();
private File archivoabierto = null;
·····
·····
·····
public void LanzarDialogo() {
if (filechooser.showSaveDialog(framepadre) == JFileChooser.APPROVE_OPTION) {
archivoabierto = new File (filechooser.getSelectedFile().getAbsolutePath());
if (archivoabierto.exists()) {
dialogosobreescribir.IniciarDialogo();
dialogosobreescribir.setVisible(true);
if (dialogosobreescribir.isBotonnoPulsado()) {
archivoabierto = null;
LanzarDialogo();
}
}
}
}
Saludos de,
RIVEROAD.