在我们学校的最新项目中,我遇到了一些问题.我想观察一个新条目的路径,路径是由文件控制器按钮选择的,但是如果我选择任何文件,整个窗口会冻结...我猜它被冻结了,因为"observePath"方法被调用但是我不知道我知道如何解决这个问题.
这是代码:
public void start() {
public Path absolutePath;
final Label labelSelectedDirectory = new Label();
Button btnOpenDirectoryChooser = new Button();
btnOpenDirectoryChooser.setText("Open DirectoryChooser");
btnOpenDirectoryChooser.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
DirectoryChooser directoryChooser = new DirectoryChooser();
File selectedDirectory =
directoryChooser.showDialog(primaryStage);
if(selectedDirectory == null) {
labelSelectedDirectory.setText("No Directory selected");
}else{
labelSelectedDirectory.setText(selectedDirectory.getAbsolutePath());
absolutePath = selectedDirectory.toPath();
try {
observePath();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
});
public void observePath() throws IOException, InterruptedException {
WatchService watcher = FileSystems.getDefault().newWatchService();
FileSystem fs …Run Code Online (Sandbox Code Playgroud)