单击按钮上的 JFileChooser

2024-01-25

我有一个按钮,单击它我希望弹出 JFileChooser。我已经尝试过这个

JButton browse= new JButton("Browse");
add(browse);
browse.addActionListener(new ClassBrowse());

public class ClassBrowse implements ActionListener {
    public void actionPerformed(ActionEvent e) {
    int returnVal = fileChooser.showOpenDialog(this);
        if (returnVal == JFileChooser.APPROVE_OPTION) {
            File file = fileChooser.getSelectedFile();
            try {
              // return the file path 
            } catch (Exception ex) {
              System.out.println("problem accessing file"+file.getAbsolutePath());
            }
        } 
        else {
            System.out.println("File access cancelled by user.");
        }       
    }   
}

Bhe上面给出了错误The method showOpenDialog(Component) in the type JFileChooser is not applicable for the arguments (ClassName.ClassBrowse)

另外,我希望它返回完整的文件路径。我该怎么做?


  1. ActionListener不是一个Component,你无法通过this到文件选择器。
  2. 你可以看看File#getCanonicalPath http://docs.oracle.com/javase/7/docs/api/java/io/File.html#getCanonicalPath%28%29获取文件的完整路径,但你不能return it, as actionPerformed只返回一个void(或者没有返回类型)。但是,您可以设置一些其他变量,调用另一个方法,甚至设置一个文本JLabel or JTextField... 例如...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单击按钮上的 JFileChooser 的相关文章

  • Java new Date() 打印

    刚刚学习 Java 我知道这可能听起来很愚蠢 但我不得不问 System out print new Date 我知道参数中的任何内容都会转换为字符串 最终值是 new Date 返回对 Date 对象的引用 那么它是如何打印这个的呢 Mo
  • Java Swing:从 JOptionPane 获取文本值

    我想创建一个用于 POS 系统的新窗口 用户输入的是客户拥有的金额 并且窗口必须显示兑换金额 我是新来的JOptionPane功能 我一直在使用JAVAFX并且它是不同的 这是我的代码 public static void main Str
  • INSERT..RETURNING 在 JOOQ 中不起作用

    我有一个 MariaDB 数据库 我正在尝试在表中插入一行users 它有一个生成的id我想在插入后得到它 我见过this http www jooq org doc 3 8 manual sql building sql statemen
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • 多个 Maven 配置文件激活多个 Spring 配置文件

    我想在 Maven 中构建一个环境 在其中我想根据哪些 Maven 配置文件处于活动状态来累积激活多个 spring 配置文件 目前我的 pom xml 的相关部分如下所示
  • 加速代码 - 3D 数组

    我正在尝试提高我编写的一些代码的速度 我想知道从 3d 整数数组访问数据的效率如何 我有一个数组 int cube new int 10 10 10 我用价值观填充其中 然后我访问这些值数千次 我想知道 由于理论上所有 3d 数组都存储在内
  • 反射找不到对象子类型

    我试图通过使用反射来获取包中的所有类 当我使用具体类的代码 本例中为 A 时 它可以工作并打印子类信息 B 扩展 A 因此它打印 B 信息 但是当我将它与对象类一起使用时 它不起作用 我该如何修复它 这段代码的工作原理 Reflection
  • 无法解析插件 Java Spring

    我正在使用 IntelliJ IDEA 并且我尝试通过 maven 安装依赖项 但它给了我这些错误 Cannot resolve plugin org apache maven plugins maven clean plugin 3 0
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何将 pfx 文件转换为 jks,然后通过使用 wsdl 生成的类来使用它来签署传出的肥皂请求

    我正在寻找一个代码示例 该示例演示如何使用 PFX 证书通过 SSL 访问安全 Web 服务 我有证书及其密码 我首先使用下面提到的命令创建一个 KeyStore 实例 keytool importkeystore destkeystore
  • JRE 系统库 [WebSphere v6.1 JRE](未绑定)

    将项目导入 Eclipse 后 我的构建路径中出现以下错误 JRE System Library WebSphere v6 1 JRE unbound 谁知道怎么修它 右键单击项目 特性 gt Java 构建路径 gt 图书馆 gt JRE
  • 如何在 javadoc 中使用“<”和“>”而不进行格式化?

    如果我写
  • 在 Mac 上正确运行基于 SWT 的跨平台 jar

    我一直致力于一个基于 SWT 的项目 该项目旨在部署为 Java Web Start 从而可以在多个平台上使用 到目前为止 我已经成功解决了由于 SWT 依赖的系统特定库而出现的导出问题 请参阅相关thread https stackove
  • 无法捆绑适用于 Mac 的 Java 应用程序 1.8

    我正在尝试将我的 Java 应用程序导出到 Mac 该应用程序基于编译器合规级别 1 7 我尝试了不同的方法来捆绑应用程序 1 日食 我可以用来在 Eclipse 上导出的最新 JVM 版本是 1 6 2 马文 看来Maven上也存在同样的
  • 如何从指定日期获取上周五的日期? [复制]

    这个问题在这里已经有答案了 如何找出上一个 上一个 星期五 或指定日期的任何其他日期的日期 public getDateOnDay Date date String dayName 我不会给出答案 先自己尝试一下 但是 也许这些提示可以帮助
  • Java列表的线程安全

    我有一个列表 它将在线程安全上下文或非线程安全上下文中使用 究竟会是哪一个 无法提前确定 在这种特殊情况下 每当列表进入非线程安全上下文时 我都会使用它来包装它 Collections synchronizedList 但如果不进入非线程安
  • 如何从泛型类调用静态方法?

    我有一个包含静态创建方法的类 public class TestClass public static
  • 玩!框架:运行“h2-browser”可以运行,但网页不可用

    当我运行命令时activator h2 browser它会使用以下 url 打开浏览器 192 168 1 17 8082 但我得到 使用 Chrome 此网页无法使用 奇怪的是它以前确实有效 从那时起我唯一改变的是JAVA OPTS以启用
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • 如何实现仅当可用内存较低时才将数据交换到磁盘的写缓存

    我想将应用程序生成的数据缓存在内存中 但如果内存变得稀缺 我想将数据交换到磁盘 理想情况下 我希望虚拟机通知它需要内存并将我的数据写入磁盘并以这种方式释放一些内存 但我没有看到任何方法以通知我的方式将自己挂接到虚拟机中before an O

随机推荐

  • rshiny - 有条件的条件面板:检查列表中的项目

    我有 2 个列表 每个列表包含多个 idp id以另一个变量为条件d d1 lt as list unique df p id df d 1 d2 lt as list unique df p id df d 2 我想添加一个conditi
  • ASP.Net 5 project.json 脚本命令的完整列表? (视觉工作室 2015)

    我已经看过了ASP NET 5团队 wiki 条目项目 json 来识别哪个脚本命令可用 目前列出以下内容 scripts prebuild echo before building postbuild echo after buildin
  • 顶层例外

    我在用着topshelf http topshelf project com 当我尝试使用 i 选项安装为服务时 我收到此异常 无法将 Magnum CommandLineParser SwitchElement 类型的对象转换为 Magn
  • 为 athena 选择特定文件

    在 Athena 中创建表时 我无法使用特定文件创建表 有没有办法从给定的存储桶中选择以 year 2019 开头的所有文件 例如 s3 bucketname prefix year 2019 csv 文档对此说得很清楚 这是不允许的 Fr
  • 正则表达式使用 YYYY-MM-DD 格式验证 PHP 中的日期

    我正在尝试制作一个日期正则表达式验证器 我遇到的问题是我正在使用输入字段 date type 这在 Chrome 中就像一个魅力 它会在 Chrome 中打开类似日历的功能 但在其余部分它什么也不做 所以我决定手动输入其余部分的日期 这是我
  • 等待目标设备上线

    我最近更新到 Android Studio 2 3 现在当我尝试运行该应用程序时 模拟器无法上线 300 秒后超时 此外 该应用程序遇到了致命异常错误 OOM 我不确定如何解决该问题 或者这是否是模拟器问题的一部分 任何帮助深表感谢 再说一
  • 如何将数据从一张工作表导入到另一张工作表

    我在 Excel 中有两个不同的工作表 所有第 1 行单元格中的标题都相同 a1 id b1 名称 c1 价格 我的问题是 有没有办法将数据 如名称 从一个工作表导入到另一个工作表中 其中两个工作表中的 id 相同 eg sheet 1 s
  • 如何找到 2 个数字中的最大值(更大、更大)?

    我有两个变量value and run value 9999 run problem getscore 如何找出哪个更大 并获得更大的值 See also Find the greatest largest maximum number i
  • Thread.Sleep 与 Task.Delay?

    我知道Thread Sleep阻塞一个线程 但确实Task Delay还阻止 或者只是像Timer它对所有回调使用一个线程 当不重叠时 this https stackoverflow com questions 15341962 how
  • 如何在 git 服务器端禁用压缩?

    我有一个存储库 从中拉取需要很长时间 因为服务器几乎没有可用 RAM 并且它在交换时进行了大量操作 remote Compressing objects 24 正在发生 即使我在服务器本地克隆 网络没有那么受限 因此发送所有未压缩的数据就可
  • PHP:多维数组中的foreach

    我有一个动态表单来创建创建数组的章节和子章节 var dump POST array textfield gt array 0 gt title one 1 gt title two 2 gt title three 4 gt title
  • SwiftUI - 如何将工具栏添加到 NavigationView 内的 TabView 选项卡?

    我正在尝试添加不同的toolbars 到我的每个选项卡 但它们没有显示 该应用程序主要在横向 iPad 上使用 我可以将工具栏添加到TabView本身并显示 但我不知道如何将按下导航堆栈的按钮传递到要在本地处理的各个视图 视图模型 我尝试过
  • Flutter:-如何将视图放置在屏幕的中心和底部?

    我正在创建教程屏幕 其中有两个视图 一个应该位于屏幕中央 另一个应该位于屏幕底部 但我的两种观点都不正确 请检查下面的图片 我已经完成了一些代码行来做到这一点 但没有得到正确的解决方案 请检查下面的代码一次 import package f
  • 如何将ajax放入循环中?

    我在循环内的 ajax 请求中有一个 ajax 请求 这里是 for var i 0 i lt input files length i ajaxFileUpload url dasdasdsa success function ajax
  • Python(flask/marshmallow)ValueError:解包值太多(预期为 2)

    我正在开发 Flask 项目 并使用 marshmallow 来验证用户输入 下面是一个代码片段 def create user in data request get json data errors Userschema load in
  • 如何在 Vue.js 方法函数中设置默认参数值?

    我试图在我的组件方法之一中为函数设置默认参数值 例如 methods myFuntion isAction false 但是当调试 isAction 的值时我得到一个 MouseEvent 我找到了解决方案 看起来事件也默认传递给该方法 因
  • 带有 ASP.NET 网站的 NUnit

    我目前正在尝试升级我们工作中的构建服务器 从没有构建服务器到拥有一个 我正在使用 JetBrainsTeamCity http en wikipedia org wiki TeamCity 已经使用过锐锐 http en wikipedia
  • Angular2 和 TypeScript 导入 node_modules

    我有一个非常简单的 hello world Angular2 应用程序 我还做出了一个明显不合理的决定 即在我的开发项目和 Spring 后端的最终部署文件夹之间使用不同的目录结构 由于这种差异 我在 TypeScript 导入方面遇到了问
  • 从嵌套集生成 JSON(perl、sql、jquery)

    我在数据库中有内容页面 使用嵌套集 我需要通过 jQuery jsTree 插件显示它 需要返回带有如下数据的 JSON data node1Title children data subNode1Title children data s
  • 单击按钮上的 JFileChooser

    我有一个按钮 单击它我希望弹出 JFileChooser 我已经尝试过这个 JButton browse new JButton Browse add browse browse addActionListener new ClassBro