java中filechooser类怎么用_JavaFX 类 FileChooser用法及代码示例

FileChooser类是JavaFX的一部分。它用于调用用于选择单个文件的文件打开对话框(showOpenDialog),用于选择多个文件的文件打开对话框(showOpenMultipleDialog)和文件保存对话框(showSaveDialog)。 FileChooser类继承Object类。

该类的构造函数是:

FileChooser():创建一个新的FileChooser对话框。

常用方法:

方法

说明

getInitialDirectory()

返回文件选择器的初始目录。

getTitle()

返回文件选择器的标题。

setInitialDirectory(File f)

设置文件选择器的初始目录。

setTitle(String t)

设置文件选择器的标题。

showOpenDialog(Window w)

显示一个新的打开文件选择对话框。

setInitialFileName(String n)

设置文件选择器的初始文件名。

showSaveDialog(Window w)

显示一个新的“保存文件选择”对话框。

getInitialFileName()

返回文件选择器的初始文件名。

以下程序说明了FileChooser类的用法:

Java程序创建fileChooser并将其添加到阶段:在此程序中,我们将创建一个名为file_chooser的文件选择器。然后创建一个名为label的Label和两个名为button和button1的Button。我们将创建两个EventHandler来处理按下button或button1时的事件。当按下按钮时,将显示一个打开的文件选择器对话框,并且所选文件在标签中显示为文本;当按下button1时,一个保存文件选择器出现,并且所选文件在标签中显示为文本。将标签和按钮添加到Vbox,将VBox添加到场景,并将场景添加到舞台,然后调用show()函数以显示最终结果。

// Java Program to create fileChooser

// and add it to the stage

import javafx.application.Application;

import javafx.scene.Scene;

import javafx.scene.control.*;

import javafx.scene.layout.*;

import javafx.stage.Stage;

import javafx.geometry.*;

import javafx.scene.paint.*;

import javafx.scene.canvas.*;

import javafx.scene.text.*;

import javafx.scene.Group;

import javafx.scene.shape.*;

import javafx.event.ActionEvent;

import javafx.event.EventHandler;

import javafx.collections.*;

import java.io.*;

import javafx.stage.FileChooser;

public class FileChooser_1 extends Application {

// launch the application

public void start(Stage stage)

{

try {

// set title for the stage

stage.setTitle("FileChooser");

// create a File chooser

FileChooser fil_chooser = new FileChooser();

// create a Label

Label label = new Label("no files selected");

// create a Button

Button button = new Button("Show open dialog");

// create an Event Handler

EventHandler event =

new EventHandler() {

public void handle(ActionEvent e)

{

// get the file selected

File file = fil_chooser.showOpenDialog(stage);

if (file != null) {

label.setText(file.getAbsolutePath()

+ "  selected");

}

}

};

button.setOnAction(event);

// create a Button

Button button1 = new Button("Show save dialog");

// create an Event Handler

EventHandler event1 =

new EventHandler() {

public void handle(ActionEvent e)

{

// get the file selected

File file = fil_chooser.showSaveDialog(stage);

if (file != null) {

label.setText(file.getAbsolutePath()

+ "  selected");

}

}

};

button1.setOnAction(event1);

// create a VBox

VBox vbox = new VBox(30, label, button, button1);

// set Alignment

vbox.setAlignment(Pos.CENTER);

// create a scene

Scene scene = new Scene(vbox, 800, 500);

// set the scene

stage.setScene(scene);

stage.show();

}

catch (Exception e) {

System.out.println(e.getMessage());

}

}

// Main Method

public static void main(String args[])

{

// launch the application

launch(args);

}

}

输出:

a5e9456245280d00d56d30f041e9f0f2.png

f4b28198c127bc427ed757046a92b8e8.png

0a649159f28f2b9d5044fc47e4784d0b.png

Java程序创建FileChooser,设置标题,初始File并将其添加到阶段:在此程序中,我们将创建一个名为fil_chooser的文件选择器。然后创建一个名为label的Label和两个名为button和button1的Button。使用setTitle()和setInitialDirectory()函数设置文件选择器的标题和初始目录。现在创建两个EventHandler来处理按下button或button1时的事件。当按下按钮时,将显示一个打开的文件选择器对话框,并且所选文件在标签中显示为文本;当按下button1时,一个保存文件选择器出现,并且所选文件在标签中显示为文本。将标签和按钮添加到Vbox,将VBox添加到场景,并将场景添加到舞台,然后调用show()函数以显示最终结果。

// Java Program to create FileChooser

// & set title, initial File

// and add it to the stage

import javafx.application.Application;

import javafx.scene.Scene;

import javafx.scene.control.*;

import javafx.scene.layout.*;

import javafx.stage.Stage;

import javafx.geometry.*;

import javafx.scene.paint.*;

import javafx.scene.canvas.*;

import javafx.scene.text.*;

import javafx.scene.Group;

import javafx.scene.shape.*;

import javafx.event.ActionEvent;

import javafx.event.EventHandler;

import javafx.collections.*;

import java.io.*;

import javafx.stage.FileChooser;

public class FileChooser_2 extends Application {

// launch the application

public void start(Stage stage)

{

try {

// set title for the stage

stage.setTitle("FileChooser");

// create a File chooser

FileChooser fil_chooser = new FileChooser();

// set title

fil_chooser.setTitle("Select File");

// set initial File

fil_chooser.setInitialDirectory(new File("e:\\"));

// create a Label

Label label = new Label("no files selected");

// create a Button

Button button = new Button("Show open dialog");

// create an Event Handler

EventHandler event =

new EventHandler() {

public void handle(ActionEvent e)

{

// get the file selected

File file = fil_chooser.showOpenDialog(stage);

if (file != null) {

label.setText(file.getAbsolutePath()

+ "  selected");

}

}

};

button.setOnAction(event);

// create a Button

Button button1 = new Button("Show save dialog");

// create an Event Handler

EventHandler event1 =

new EventHandler() {

public void handle(ActionEvent e)

{

// get the file selected

File file = fil_chooser.showSaveDialog(stage);

if (file != null) {

label.setText(file.getAbsolutePath()

+ "  selected");

}

}

};

button1.setOnAction(event1);

// create a VBox

VBox vbox = new VBox(30, label, button, button1);

// set Alignment

vbox.setAlignment(Pos.CENTER);

// create a scene

Scene scene = new Scene(vbox, 800, 500);

// set the scene

stage.setScene(scene);

stage.show();

}

catch (Exception e) {

System.out.println(e.getMessage());

}

}

// Main Method

public static void main(String args[])

{

// launch the application

launch(args);

}

}

输出:

a5e9456245280d00d56d30f041e9f0f2.png

df3d76477102861eed3a5299d4254536.png

6dcfe197be0399c78d7311dbce692b3f.png

注意:以上程序可能无法在在线IDE中运行,请使用离线编译器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值