【发布时间】:2023-03-29 10:32:01
【问题描述】:
我尝试用我的新应用程序打开一个 javadoc html 文件,但是我无法打开 javadoc 文件,我有一个类名 OpenUri,调用它时应该打开 javadoc:
package gui;
import java.awt.Desktop;
import java.net.URI;
import java.net.URISyntaxException;
import java.net.URL;
import javax.swing.JFrame;
public class OpenUri extends JFrame {
public static void openWebpage(URI uri) {
Desktop desktop = Desktop.isDesktopSupported() ? Desktop.getDesktop() : null;
if (desktop != null && desktop.isSupported(Desktop.Action.BROWSE)) {
try {
desktop.browse(uri);
} catch (Exception e) {
e.printStackTrace();
}
}
}
public static void openWebpage(URL url) {
try {
openWebpage(url.toURI());
} catch (URISyntaxException e) {
e.printStackTrace();
}
}
}
然后我从另一个名为 Menu 的类中调用并使用这个类,其中帮助按钮有一个动作侦听器等。但是当我运行代码并按下帮助按钮时,没有 javadoc 出现,即它没有打开文档,即没有任何反应,没有窗口,什么都没有? 我可以手动打开它的唯一方法是在 Eclipse 中单击它,这是我正在使用的 Menu 类中的特定代码:
//Help
JMenu helpMenu = new JMenu("Help");
helpMenu.setMnemonic(KeyEvent.VK_H);
helpMenu.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent event) {
try {
URI uri = new URI("file:///C:/Users/howhowhows/workspace/OPTICS_DROP_MENU/doc/index.html");
OpenUri.openWebpage(uri);
} catch (URISyntaxException e) {
e.printStackTrace();
}
}
});
如果有人对我做错了什么有任何想法,即我需要添加/更改什么,将不胜感激。
【问题讨论】:
-
你在编辑方面打败了我我不会买这张唱片。
-
不是说它解决了什么问题,而是为什么
OpenUri extends JFrame? -
@mplungjan 被划伤了吗?
-
我看到很多编辑都被撤消了。也许尽量不要并行编辑?
-
@Pshemo 我正在编写的应用程序是一个 GUI,所以我认为“OpenUri 扩展 JFrame”将是实现该类的正确方法,有什么想法吗?