未获取java帮助文件(.hs)
我在项目中创建了一个类(javahelp),用于在单击帮助内容(菜单项)时获取java帮助文件。我更新了目录中安装的未获取java帮助文件(.hs),java,swing,javahelp,Java,Swing,Javahelp,我在项目中创建了一个类(javahelp),用于在单击帮助内容(菜单项)时获取java帮助文件。我更新了目录中安装的javahelp-2.0\u 05 C:\Program Files\javahelp-2.0_05\demos\bin\hsviewer.jar C:\Program Files\Java\jdk1.6.0_24\bin\java.exe E:\java\databaserecord\src\HelpFile\javahelp E:\java\databaserecord
javahelp-2.0\u 05
C:\Program Files\javahelp-2.0_05\demos\bin\hsviewer.jar
C:\Program Files\Java\jdk1.6.0_24\bin\java.exe
E:\java\databaserecord\src\HelpFile\javahelp
E:\java\databaserecord\build\classes\javahelp-2.0_05\demos\hs\merge\Master.hs
然后Java exe文件包含在目录中
C:\Program Files\javahelp-2.0_05\demos\bin\hsviewer.jar
C:\Program Files\Java\jdk1.6.0_24\bin\java.exe
E:\java\databaserecord\src\HelpFile\javahelp
E:\java\databaserecord\build\classes\javahelp-2.0_05\demos\hs\merge\Master.hs
我的项目是在目录中创建的
C:\Program Files\javahelp-2.0_05\demos\bin\hsviewer.jar
C:\Program Files\Java\jdk1.6.0_24\bin\java.exe
E:\java\databaserecord\src\HelpFile\javahelp
E:\java\databaserecord\build\classes\javahelp-2.0_05\demos\hs\merge\Master.hs
然后我更新了目录中的java帮助文件文件夹
C:\Program Files\javahelp-2.0_05\demos\bin\hsviewer.jar
C:\Program Files\Java\jdk1.6.0_24\bin\java.exe
E:\java\databaserecord\src\HelpFile\javahelp
E:\java\databaserecord\build\classes\javahelp-2.0_05\demos\hs\merge\Master.hs
当我单击一个帮助内容(menuItem)
时,它应该会打开一个Master.hs
文件,但我没有得到任何输出和错误。如果我打印那个帮助集URL,它会显示这一行
file:/E:/java/databaserecord/build/classes/javahelp-2.0_05/demos/hs/merge/Master.hs
但它并没有打开帮助集页面。如何显示帮助集文件
import java.net.*;
import javax.swing.*;
import javax.help.*;
import java.awt.event.*;
public class javahelp1 extends javax.swing.JFrame {
public javahelp1() {
initComponents();
}
//HelpSet hs;
public void helpset(){
try {
ClassLoader cl = javahelp1.class.getClassLoader();
URL hsURL = HelpSet.findHelpSet(cl, "javahelp-2.0_05/demos/hs/merge/Master.hs");
System.out.println(hsURL);
HelpSet hs = new HelpSet(cl, hsURL);
HelpBroker hb = hs.createHelpBroker();
new CSH.DisplayHelpFromSource(hb);
} catch(Exception ee) {
System.out.println(ee);
System.out.println("HelpSet: "+ee.getMessage());
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jMenuBar1 = new javax.swing.JMenuBar();
Mnu01 = new javax.swing.JMenu();
Mnu02 = new javax.swing.JMenu();
MnuItm01 = new javax.swing.JMenuItem();
MnuItm02 = new javax.swing.JMenuItem();
MnuItm03 = new javax.swing.JMenuItem();
MnuItm04 = new javax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setFont(new java.awt.Font("Arial", 0, 10));
Mnu01.setMnemonic('F');
Mnu01.setText("File");
Mnu01.setToolTipText("Create a File");
jMenuBar1.add(Mnu01);
Mnu02.setMnemonic('H');
Mnu02.setText("Help");
Mnu02.setToolTipText("For Help");
MnuItm01.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F1, 0));
MnuItm01.setText("Content1");
MnuItm01.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MnuItm01ActionPerformed(evt);
}
});
Mnu02.add(MnuItm01);
MnuItm02.setMnemonic('2');
MnuItm02.setText("Content2");
MnuItm02.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MnuItm02ActionPerformed(evt);
}
});
Mnu02.add(MnuItm02);
MnuItm03.setMnemonic('3');
MnuItm03.setText("Content3");
MnuItm03.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MnuItm03ActionPerformed(evt);
}
});
Mnu02.add(MnuItm03);
MnuItm04.setMnemonic('4');
MnuItm04.setText("Content4");
MnuItm04.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MnuItm04ActionPerformed(evt);
}
});
Mnu02.add(MnuItm04);
jMenuBar1.add(Mnu02);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 587, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 309, Short.MAX_VALUE)
);
pack();
}// </editor-fold>
private void MnuItm02ActionPerformed(java.awt.event.ActionEvent evt) {
new javahelp2().setVisible(true);
}
private void MnuItm03ActionPerformed(java.awt.event.ActionEvent evt) {
new javahelp3().setVisible(true);
}
private void MnuItm04ActionPerformed(java.awt.event.ActionEvent evt) {
new javahelp4().setVisible(true);
}
private void MnuItm01ActionPerformed(java.awt.event.ActionEvent evt) {
helpset();
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new javahelp1().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JMenu Mnu01;
private javax.swing.JMenu Mnu02;
private javax.swing.JMenuItem MnuItm01;
private javax.swing.JMenuItem MnuItm02;
private javax.swing.JMenuItem MnuItm03;
private javax.swing.JMenuItem MnuItm04;
private javax.swing.JMenuBar jMenuBar1;
// End of variables declaration
}
import java.net.*;
导入javax.swing.*;
导入javax.help.*;
导入java.awt.event.*;
公共类javahelp1扩展了javax.swing.JFrame{
公共javahelp1(){
初始化组件();
}
//帮助集;
公共void帮助集(){
试一试{
ClassLoader cl=javahelp1.class.getClassLoader();
URL hsURL=HelpSet.findHelpSet(cl,“javahelp-2.0_05/demos/hs/merge/Master.hs”);
System.out.println(hsURL);
帮助集hs=新的帮助集(cl,hsURL);
HelpBroker hb=hs.createHelpBroker();
新CSH.DisplayHelpFromSource(hb);
}捕获(异常ee){
系统输出打印(ee);
System.out.println(“帮助集:+ee.getMessage());
}
}
@抑制警告(“未选中”)
//
私有组件(){
jMenuBar1=newjavax.swing.JMenuBar();
Mnu01=newjavax.swing.JMenu();
Mnu02=newjavax.swing.JMenu();
MnuItm01=newjavax.swing.JMenuItem();
MnuItm02=newjavax.swing.JMenuItem();
MnuItm03=newjavax.swing.JMenuItem();
MnuItm04=newjavax.swing.JMenuItem();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
setFont(新java.awt.Font(“Arial”,0,10));
Mnu01.设置助记符('F');
Mnu01.setText(“文件”);
Mnu01.setToolTipText(“创建文件”);
jMenuBar1.add(Mnu01);
Mnu02.设置助记符('H');
Mnu02.setText(“帮助”);
Mnu02.setToolTipText(“帮助”);
MnuItm01.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_F1,0));
MnuItm01.setText(“内容1”);
MnuItm01.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
MNUITM01执行的操作(evt);
}
});
Mnu02.add(MnuItm01);
MnuItm02.set助记符('2');
MnuItm02.setText(“内容2”);
MnuItm02.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
MNUITM02执行的操作(evt);
}
});
Mnu02.add(MnuItm02);
MnuItm03.设置助记符('3');
MnuItm03.setText(“内容3”);
MnuItm03.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
MNUITM03已执行的操作(evt);
}
});
Mnu02.add(MnuItm03);
MnuItm04.设置助记符('4');
MnuItm04.setText(“内容4”);
MnuItm04.addActionListener(新java.awt.event.ActionListener(){
public void actionPerformed(java.awt.event.ActionEvent evt){
MNUITM04执行的操作(evt);
}
});
Mnu02.add(MnuItm04);
jMenuBar1.add(Mnu02);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout=newjavax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(布局);
layout.setHorizontalGroup(
createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0,587,短。最大值)
);
layout.setVerticalGroup(
createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0,309,短。最大值)
);
包装();
}//
私有无效MnuItm02ActionPerformed(java.awt.event.ActionEvent evt){
新的javahelp2().setVisible(true);
}
私有无效MnuItm03ActionPerformed(java.awt.event.ActionEvent evt){
新的javahelp3().setVisible(true);
}
私有无效MnuItm04ActionPerformed(java.awt.event.ActionEvent evt){
新的javahelp4().setVisible(true);
}
私有无效MnuItm01ActionPerformed(java.awt.event.ActionEvent evt){
帮助集();
}
公共静态void main(字符串参数[]){
invokeLater(new Runnable()){
公开募捐{
新的javahelp1().setVisible(true);
}
});
}
//变量声明-不修改
私有javax.swing.JMenu Mnu01;
私有javax.swing.JMenu Mnu02;
私有javax.swing.JMenuItem MnuItm01;
私有javax.swing.JMenuItem MnuItm02;
私有javax.swing.JMenuItem MnuItm03;
私有javax.swing.JMenuItem MnuItm04;
私有javax.swing.JMenuBar jMenuBar1;
//变量结束声明
}
我对java相当陌生,但我唯一能注意到的是,在顶部,这是您所说的。有没有可能您忘记说public void,并且您正试图声明一个方法?它可能是沿着这些路线的东西。我希望这是有帮助的:)“但我没有得到任何输出和错误”您如何运行GUI?(例如,从命令行双击Jar,使用IDE启动它…)