Jskad/extensions/calpa/Docs/ReadMeExamples/MyThirdCalPaneApplication.java

69 lines
1.7 KiB
Java
Raw Normal View History

2003-07-05 22:13:17 +00:00
import java.net.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import calpa.html.*;
public class MyThirdCalPaneApplication {
public static void main(String args[]) {
URL url = null;
try {
url = new URL("file:///c:/jdk1.2/docs/api/overview-summary.html");
} catch (MalformedURLException e) {
System.err.println("Malformed URL");
System.exit(1);
}
JFrame f = new JFrame();
CalHTMLPane pane = new CalHTMLPane();
f.getContentPane().add(pane, "Center");
//create a panel, add buttons, and add a listener to the buttons
JPanel p = new JPanel();
MyListener ml = new MyListener(pane);
String[] s = {"Reload", "Back", "Forward", "Stop"};
JButton b;
for (int i=0; i<4; i++) {
b = new JButton(s[i]);
b.addActionListener(ml);
p.add(b);
}
f.getContentPane().add(p, "South");
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
f.setSize(new Dimension(Math.min(d.width - 10, 800), Math.min(d.height - 40, 600)));
f.setVisible(true);
if (url != null) {
pane.showHTMLDocument(url);
}
}
private static class MyListener implements ActionListener {
CalHTMLPane pane;
public MyListener(CalHTMLPane pane) {
this.pane = pane;
}
public void actionPerformed(ActionEvent e) {
String s = e.getActionCommand();
if (("Reload").equals(s)) {
pane.reloadDocument();
} else if (("Back").equals(s)) {
pane.goBack();
} else if (("Forward").equals(s)) {
pane.goForward();
} else if (("Stop").equals(s)) {
pane.stopAll();
}
}
}
}