如何解决从默认浏览器打开URL会使应用程序崩溃
我有一个用JavaFX 14编写的GUI应用程序(不是XML)。我目前有三个列表,每个列表都连接到一个不同的自定义类,其中存在一个ObservableList,用于更新ListViews。我有三个。双击第一个还包含URL的ListView的元素后,无论操作系统如何,我都想在默认浏览器中打开该URL(我在Ubuntu 20.04上编程,该应用程序也将在W10上使用)。
listSquads.setOnMouseClicked(new EventHandler<MouseEvent>() {
@Override
public void handle(MouseEvent event) {
if(event.getClickCount()==2) {
try {
if (Desktop.isDesktopSupported() && Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) {
Desktop.getDesktop().browse(new URI(bot.getSquadHandler().extractURL(listSquads.getSelectionModel().getSelectedItem())));
}
} catch (IOException e) {
e.printStackTrace();
} catch (URISyntaxException e) {
e.printStackTrace();
}
}
}
});
这是代码。该机器人是基于pIRCbot库的自定义TwitchBot对象。 getter方法中提到的squadHandler被称为自定义类。顾名思义,Extract URL是一种提取给定字符串作为输入的确切URL的方法-该部分可以正常工作,因为它在代码的其他部分中被调用并且可以正常工作,并且我也对其进行了测试。 / p>
但是,双击ViewList的任何给定元素时,应用程序冻结,然后在几秒钟后崩溃。为什么会这样呢?无论使用哪种操作系统,都可以打开浏览器吗?
提前谢谢! :)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。