如何在 JavaFX 中创建文件选择器?
使用 JavaFX 文件选择器可以打开文件、浏览文件并保存文件。类 javafx.stage.FileChooser 表示一个文件选择器,您可以使用它打开文件对话框、打开单个文件或多个文件。
您可以通过实例化这个类来在应用程序中创建一个文件选择器。这个类有 4 个属性 −
initialDirectory − 此属性指定文件选择器的初始目录。您可以使用 setInitialDirectory() 方法为其设置值。
selectedExtensionFilter − 此属性指定对话框中显示的扩展名过滤器。您可以使用 setSelectedExtensionFilter() 方法为其设置值。
Title − 此属性指定对话框的标题。您可以使用 setTitle() 方法为其设置值。
通过为 FileChooser 类创建实例并为必备属性设置值之后,您就可以在文件选择器中显示一个对话框以打开单个文件、打开多个文件或保存文件,分别通过调用 showOpenDialog()、 showOpenMultipleDialog() 或 showSaveDialog() 方法实现。
示例
import javafx.application.Application; import javafx.event.ActionEvent; import javafx.event.EventHandler; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.control.Menu; import javafx.scene.control.MenuBar; import javafx.scene.control.MenuItem; import javafx.scene.paint.Color; import javafx.stage.FileChooser; import javafx.stage.Stage; import javafx.stage.FileChooser.ExtensionFilter; public class FileChooserExample extends Application { public void start(Stage stage) { //Creating a menu Menu fileMenu = new Menu("File"); //Creating menu Items MenuItem item = new MenuItem("Open Image"); fileMenu.getItems().addAll(item); //Creating a File chooser FileChooser fileChooser = new FileChooser(); fileChooser.setTitle("Open Image"); fileChooser.getExtensionFilters().addAll(new ExtensionFilter("All Files", "*.*")); //Adding action on the menu item item.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent event) { //Opening a dialog box fileChooser.showOpenDialog(stage); }}); //Creating a menu bar and adding menu to it. MenuBar menuBar = new MenuBar(fileMenu); menuBar.setTranslateX(3); menuBar.setTranslateY(3); //Setting the stage Group root = new Group(menuBar); Scene scene = new Scene(root, 595, 355, Color.BEIGE); stage.setTitle("File Chooser Example"); stage.setScene(scene); stage.show(); } public static void main(String args[]){ launch(args); } }
输出
广告