/* * A Java program that creates a custom component with its own renderer. * * Ben Bederson, January 29, 2002 */ import java.awt.*; import java.awt.event.*; import java.awt.geom.*; import javax.swing.*; public class BasicGraphics extends JFrame { static public void main(String[] args) { new BasicGraphics(); } public BasicGraphics() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); BCanvas canvas = new BCanvas(); canvas.setPreferredSize(new Dimension(400, 400)); getContentPane().add(canvas); pack(); setVisible(true); } } class BCanvas extends JComponent { public void paintComponent(Graphics graphics) { Graphics2D g2 = (Graphics2D) graphics; g2.setColor(Color.white); g2.fillRect(getX(), getY(), getWidth(), getHeight()); g2.setFont(new Font("Helvetica", Font.PLAIN, 15)); g2.setColor(Color.black); g2.drawString("Hello World!", 100, 100); } }