package graph1; import javax.swing.JEditorPane; import javax.swing.JFrame; import javax.swing.JScrollPane; import javax.swing.event.HyperlinkEvent; import javax.swing.event.HyperlinkListener; public class Browser extends JFrame { private JEditorPane pane; /** * The constructor runs the browser. It displays the main frame with the * fetched initialPage * * @param initialPage * the first page to show */ public Browser(String initialPage) { pane = new JEditorPane(); pane.setEditable(false); JScrollPane scrollPane = new JScrollPane(pane); pane.addHyperlinkListener(new HyperlinkListener() { public void hyperlinkUpdate(HyperlinkEvent evt) { if (evt.getEventType() == HyperlinkEvent.EventType.ACTIVATED) { setPage(evt.getURL().toString()); } } }); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setContentPane(scrollPane); pack(); setSize(960, 720); setVisible(true); setPage(initialPage); } protected void setPage(String url) { try { pane.setPage(url); } catch (Exception e) { } } /** Create a Browser object. Use the command-line url if given */ public static void main(String[] args) { String initialPage = "http://www.google.fr"; if (args.length > 0) initialPage = args[0]; new Browser(initialPage); } }