Диалоговое окно открытия и сохранения файла в JavaFX

👁 346 просмотров

Иногда в программе требуется реализовать диалоговое окно, которое будет открывать или сохранять файл и для таких целей в JavaFX есть отдельный класс FileChooser. Данный класс реализует данные диалоговые окна посредством вызова методов showOpenDialog() или showSaveDialog().

1. Открытие файла определенного расширения

Ниже покажем пример кода реализации диалогового окна открытия файла определенного расширения или списка расширений

@FXML
private void hndlOpenFile(ActionEvent event) {
        FileChooser fileChooser = new FileChooser();//Класс работы с диалогом выборки и сохранения
        fileChooser.setTitle("Open Document");//Заголовок диалога
        FileChooser.ExtensionFilter extFilter = 
        new FileChooser.ExtensionFilter("HTML files (*.html)", "*.html");//Расширение
        fileChooser.getExtensionFilters().add(extFilter);
        File file = fileChooser.showOpenDialog(CodeNote.mainStage);//Указываем текущую сцену CodeNote.mainStage
        if (file != null) {
            //Open
            System.out.println("Процесс открытия файла");
        }
}

2. Диалоговое окно сохранения файла определенного расширения

Ниже покажем пример кода реализации диалогового окна сохранения файла определенного расширения или списка расширений

@FXML
private void hndlOpenFile(ActionEvent event) {
    FileChooser fileChooser = new FileChooser();//Класс работы с диалогом выборки и сохранения
    fileChooser.setTitle("Save Document");//Заголовок диалога
    FileChooser.ExtensionFilter extFilter = 
    new FileChooser.ExtensionFilter("HTML files (*.html)", "*.html");//Расширение
    fileChooser.getExtensionFilters().add(extFilter);
    File file = fileChooser.showSaveDialog(CodeNote.mainStage);//Указываем текущую сцену CodeNote.mainStage
    if (file != null) {
        //Save
        System.out.println("Процесс открытия файла");
    }
}

3. Дополнительно

Для того, чтобы открывать или сохранять несколько видов расширений необходимо использовать мульти-фильтр

fileChooser.getExtensionFilters().addAll(
    new FileChooser.ExtensionFilter("All Images", "*.*"),
    new FileChooser.ExtensionFilter("HTML Documents", "*.html"),
    new FileChooser.ExtensionFilter("JPG", "*.jpg"),
    new FileChooser.ExtensionFilter("PNG", "*.png")
);

Для того, чтобы открывать несколько файлов необходимо использовать диалоговое окно мульти-выборки, который вызывается посредством метода showOpenMultipleDialog

List<File> list =
    fileChooser.showOpenMultipleDialog(CodeNote.mainStage);
    if (list != null) {
    for (File file : list) {
    openFile(file);
    }
}

Для того, чтобы узнать какое расширение выбрано в процессе сохранения или открытия используем getSelectedExtensionFilter(), а для того, чтобы сравнить существующие расширения используем метод getExtensionFilters().get(index), где index — порядковый номер регистрированного расширения

if(fileChooser.getSelectedExtensionFilter().equals(fileChooser.getExtensionFilters().get(0))){
    if (!file.getPath().endsWith(".html")) {
        file = new File(file.getPath() + ".html");
    }
        System.out.println("Процесс сохранения html файла");
    }else if(fileChooser.getSelectedExtensionFilter().equals(fileChooser.getExtensionFilters().get(1)))
    {
    if (!file.getPath().endsWith(".png")) {
        file = new File(file.getPath() + ".png");
    }
    System.out.println("Процесс сохранения png файла");
}

Tennis Anime — программа на OpenGL для моделирования игры в теннис

👁 80 просмотров

Tennis Anime —  программа, которая анимирует процесс игры в теннис. Программа реализована на графической библиотеке OpenGL на платформе Win32. Есть возможность управления движения видовым экраном в пространстве с помощью стрелок Вверх, Вниз, Влево, Направо. Написан на C++ в среде Visual Studio 2010. Основной целью данной программы является демонстрация движения мяча в воздухе и движение ракеток.

tennis-anime

Для создания временных интервалов движения мяча в программе используется таймер. Движение мяча в пространстве от ракетки описывается формулой горизонтально брошенного тела, а отскок от земли — формулой движения тела под углом.

Safe Manager — программа для изменения атрибутов файлов

👁 223 просмотров

Safe Manager — программа для Windows, которая помогает устанавливать или изменять атрибуты любого файла. С помощью данной программы вы можете также скрывать файлы на компьютере под пароль, возведя файл в собственный формат программы .smf и извлекать их из сейфа, введя поставленный пароль. С помощью атрибутов можете скрывать файл на компьютере, установив атрибут Hidden, а также запретить его удалять с компьютера установив атрибут System. Программа очень легкая и весит от силы 1 Мгб и со скромными потребностями .NET 3.5 или выше.

Prewiev Image

Примечание: При скрытии файла имейте в виду, что увидеть его и изменить его атрибут на видимый можно, в дальнейшем,  через настройки папок и файлов Windows(Панель управления\Все элементы панели управления\Параметры папок) сняв галочку с пункта Скрывать защищенные системные файлы.