要求::如果用户以一种方式一次删除多个文件,然后如何使用它,那么如果用户将一个或多个文件一次删除,则我有获取文件的代码。
我在Drag and drop multiple files into javaFX处发现了类似的问题,但答案并非我所期望的。
这是到目前为止我尝试在文本区域中拖动文件的方法:
textArea.setOnDragOver(new EventHandler<DragEvent>() {
@Override
public void handle(DragEvent event) {
if (event.getDragboard().hasFiles())
event.acceptTransferModes(TransferMode.COPY);
event.consume();
}
});
textArea.setOnDragDropped(new EventHandler<DragEvent>() {
@Override
public void handle(DragEvent event) {
Dragboard db = event.getDragboard();
List<File> files = (ArrayList<File>) db.getContent(DataFormat.FILES);
if (files != null) {
File file = files.get(0);
// rest implementation after getting file
}
event.setDropCompleted(success);
event.consume();
}
});
如果用户删除多个文件,我可以使用List<File> files = (ArrayList<File>) db.getContent(DataFormat.FILES);
获取文件列表。
但是,如果用户一个(一个以上)删除文件,那么如何使用它(就像我们在gmail中找到的一样,如下图所示)