home *** CD-ROM | disk | FTP | other *** search
Java Source | 1998-12-14 | 2.0 KB | 90 lines |
- import java.awt.*;
- import java.awt.event.*;
-
- public class PrintGraphics extends Frame implements ActionListener
- {
- PrintCanvas canvas1;
-
- public PrintGraphics()
- {
- super("PrintGraphics");
- canvas1 = new PrintCanvas();
- add("Center", canvas1);
-
- Button b = new Button( "Print");
- b.setActionCommand("print");
- b.addActionListener(this);
- add("South",b);
-
- pack();
-
- }//constructor
-
- public void actionPerformed(ActionEvent e)
- {
- String cmd = e.getActionCommand();
- if (cmd.equals("print"))
- {
- PrintJob pjob = getToolkit().getPrintJob(this, "PrintGraphics", null);
- if (pjob != null)
- {
- Graphics pg = pjob.getGraphics();
-
- if (pg != null)
- {
- canvas1.printAll(pg);
- pg.dispose();
- }//if
- pjob.end();
- }//if
-
- }//if
-
- }//actionPerformed
-
- public static void main(String args[])
- {
- PrintGraphics test = new PrintGraphics();
- test.addWindowListener(new WindowCloser());
- test.show();
-
- }
- }//class PrintGraphics
-
- class PrintCanvas extends Canvas
- {
- public Dimension getPreferredSize()
- {
- return new Dimension(200,200);
- }
-
- public void paint(Graphics g)
- {
- Rectangle r = getBounds();
-
- g.setColor(Color.yellow);
- g.fillRect(0,0, r.width, r.height);
-
- g.setColor(Color.blue);
- g.drawString("Hello, World", 100, 100);
-
- g.setColor(Color.red);
- g.drawLine(0,100,100,0);
- g.fillOval(135,140,15,15);
- }
-
- }//class PrintCanvas
-
- class WindowCloser extends WindowAdapter
- {
- public void windowClosing(WindowEvent e)
- {
- Window win = e.getWindow();
- win.setVisible(false);
- win.dispose();
- System.exit(0);
- }//windowClosing
- }//class WindowCloser
-
-
-