gwt - 浏览器删除文件事件 GWT

标签 gwt browser gxt

我的浏览器删除文件行为出现问题。我有一个“ContentPanel”,其中包含文件拖放区域。当我拖放文件时,一切正常,但是当我将文件拖放到“ContentPanel”内的其他位置时,浏览器会打开该文件(默认行为)。

如何避免这种情况?在最后一种情况下不应发生任何事情。

最佳答案

需要 2 个放置处理程序,一个用于内容面板,另一个用于拖放区域。

public FileUploadWidget() {

    RootPanel rootPanel = RootPanel.get();
    DropHandler dropHandlerRoot = new DropHandler(rootPanel);

    dropHandlerRoot.addFileEventHandler(new FileEventHandler() {
        @Override
        public void onFiles(FileEvent event) {
            // Nothing to do, avoid the default browser 
            // behaviour which is to open the file
        }
    });

    // Drag and drop area handler
    dropHandler = new DropHandler(dragAndDropArea);
    dropHandler.addFileEventHandler(new FileEventHandler() {
        @Override
        public void onFiles(FileEvent event) {
            JsArray<File> files = event.getFiles();

            for (int i = 0; i < files.length(); ++i) {
                File file = files.get(i);
                addFile(file);
                handleSizeChange();
            }
        }
    });
}

关于gwt - 浏览器删除文件事件 GWT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14498575/

相关文章:

java - 如何从 GWT 插件中消除 Eclipse 中的 "The web.xml file does not exist"错误?

javascript - 排序 : is it browser specific

java - 支持多浏览器/选项卡 session J2EE/Web 应用程序

javascript - 创建动态 JavaScript 的替代方法?

java - 使用 Hibernate 从两个不同的 Web 应用程序 (GXT) 连接同一个数据库

java - 具有不可选择类别的 GXT 组合框

java - 将大型 GWT 应用程序拆分为多个模块

java - 如何通过单击单元格表中的单元格来打开弹出面板?

java - GWT - 显示日期递减一天

java - 在 GXT 中保存对象状态