Я создал один класс (javahelp) в своем проекте для получения файла справки java, например, когда я щелкаю по содержимому справки (пункт меню).Я обновил установленный javahelp-2.0_05
в каталоге
C:\Program Files\javahelp-2.0_05\demos\bin\hsviewer.jar
Затем исполняемый файл Java содержится в каталоге
C:\Program Files\Java\jdk1.6.0_24\bin\java.exe
Мой проект создан в каталоге
E:\java\databaserecord\src\HelpFile\javahelp
Затем я обновил папку файла справки Java в каталоге
E:\java\databaserecord\build\classes\javahelp-2.0_05\demos\hs\merge\Master.hs
Когда я нажимаю HelpContent(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
}