看看Java2 技術內幕,在那本書的後機章有介紹,我現在一時想不起來了

解决方案 »

  1.   

    在2000下,可以Runtime.getRuntime().exit("explorer http://www.sina.com.cn");
    java里有一个JEditorPane可以来完成,但是复杂的HTML网页会出现问题,但是间的得帮助文件还是可以做的,JBuilder的帮助应该就是用它做的。如果html好实现的话,JB也不会用它了。下面有一个例子:
    import javax.swing.*;
    import javax.swing.event.*;
    import javax.swing.text.*;
    import javax.swing.text.html.*;
    import javax.swing.border.*;
    import javax.swing.colorchooser.*;
    import javax.swing.filechooser.*;
    import javax.accessibility.*;import java.awt.*;
    import java.awt.event.*;
    import java.beans.*;
    import java.util.*;
    import java.io.*;
    import java.applet.*;
    import java.net.*;/**
     * Html Demo
     *
     * @version 1.4 99/07/23
     * @author Jeff Dinkins
     */
    public class HtmlDemo extends JFrame{    JEditorPane html;    /**
         * main method allows us to run as a standalone demo.
         */
        public static void main(String[] args) {
    JFrame demo = new HtmlDemo();
        demo.setSize(800,600);
        demo.setLocation(10,10);
    demo.show();
        }    /**
         * HtmlDemo Constructor
         */
        public HtmlDemo(){
            // Set the title for this demo, and an icon used to represent this
            // demo inside the SwingSet2 app.
           // super(swingset, "HtmlDemo", "toolbar/JEditorPane.gif");
       super();
            try {
        URL url = new URL("http://www.sina.com.cn");
        // System.getProperty("user.dir") +
        // System.getProperty("file.separator");
        //String path = null;
        try {
    //path = "/resources/index.html";
    //url = getClass().getResource(path);
                } catch (Exception e) {
    //System.err.println("Failed to open " + path);
    url = null;
                }
                if(url != null) {
                    html = new JEditorPane(url);
                    html.setEditable(false);
                    html.addHyperlinkListener(createHyperLinkListener()); JScrollPane scroller = new JScrollPane();
    JViewport vp = scroller.getViewport();
    vp.add(html);
                    this.getContentPane().add(scroller, BorderLayout.CENTER);
                }
            } catch (MalformedURLException e) {
                System.out.println("Malformed URL: " + e);
            } catch (IOException e) {
                System.out.println("IOException: " + e);
            }
        }    public HyperlinkListener createHyperLinkListener() {
    return new HyperlinkListener() {
        public void hyperlinkUpdate(HyperlinkEvent e) {
    if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
        if (e instanceof HTMLFrameHyperlinkEvent) {
    ((HTMLDocument)html.getDocument()).processHTMLFrameHyperlinkEvent(
        (HTMLFrameHyperlinkEvent)e);
        } else {
    try {
        html.setPage(e.getURL());
    } catch (IOException ioe) {
        System.out.println("IOE: " + ioe);
    }
        }
    }
        }
    };
        }}