Возвращение пути с JFileChooser - PullRequest
0 голосов
/ 16 апреля 2019

Ну, у меня есть метод для возврата пути, с помощью JFileChooser, я хочу сохранить этот путь в переменной, чтобы затем изменить File.Но когда я вызываю метод в кнопке JFrame со строкой: tf.guardarTareasHash(operator.obtenerTabla(), "modificar", tf.path());, я понимаю, что снова открываю FileDialog, чтобы выбрать файл.

Я хотел использовать tf.path() для отправки какпараметра, но я не ожидал, что он снова откроет JFileChooser.Строка operator.obtenerTabla() отправляет Hashtable, а modificar - это String, который я отправляю для проверки в условном выражении, если программа сохранит новый файл или изменит.

    public String path(){
        JFileChooser jfc = new JFileChooser();
        jfc.setCurrentDirectory(new 
        File("C:\\Users\\ARCANET\\Documents\\NetBeansProjects\\hash\\tareas"));
        jfc.showOpenDialog(jfc);
        String ruta = jfc.getSelectedFile().getAbsolutePath();        
        return ruta;
}

Any Есть ли способ сохранить путь к выбранному файлу без повторного открытия OpenDialog?Я думал сделать для нее переменную static.

1 Ответ

0 голосов
/ 16 апреля 2019

Если я вас правильно понял, вы хотите

tf.guardarTareasHash(operator.obtenerTabla(), "modificar", tf.path());

не открывать файл снова. В этом случае вам нужно сохранить результат вашего метода пути при первом вызове и передать результат в качестве третьего параметра вместо повторного вызова метода пути.

class MyClass {
    String myPath = null;
    ...
    // call the path method which opens the file dialog
    myPath = path();
    ...
    // use the saved result
    tf.guardarTareasHash(operator.obtenerTabla(), "modificar", myPath);
}

Вам все еще нужно выполнить проверки, что делать, если myPath не инициализирован (например, пользователь отменяет диалог файла)

...