MainClass.java Source code

Java tutorial

Introduction

Here is the source code for MainClass.java

Source

  import java.awt.Color;
  import java.awt.Font;
  import java.awt.FontMetrics;
  import java.awt.Graphics;
  import java.awt.Graphics2D;
  import java.awt.Image;
  import java.awt.TexturePaint;
  import java.awt.geom.Rectangle2D;
  import java.awt.image.BufferedImage;

  import javax.swing.JFrame;
  import javax.swing.JPanel;

  public class MainClass extends JFrame {
      public MainClass() {
          getContentPane().add(new DrawingCanvas());
          setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          setSize(500, 500);
          setVisible(true);
      }

      public static void main(String arg[]) {
          new MainClass();
      }
  }

  class DrawingCanvas extends JPanel {
      Font font = new Font("Dialog", Font.BOLD, 40);
      FontMetrics fontMetrics;

      DrawingCanvas() {
          setSize(300, 300);
          setBackground(Color.white);
          fontMetrics = getFontMetrics(font);
      }

public void paint(Graphics g) {
  Graphics2D g2D = (Graphics2D) g;
  Image displayImage = getToolkit().getImage("c:\your.gif");
    
  if (displayImage != null) {
    BufferedImage bi = new BufferedImage(
                       displayImage.getWidth(this),
                       displayImage.getHeight(this),
                       BufferedImage.TYPE_INT_RGB);
    bi.createGraphics().drawImage(displayImage, 0, 0, this);

    Rectangle2D rectangle = new Rectangle2D.Float(0, 0,
                               displayImage.getWidth(this),
                               displayImage.getHeight(this));

    TexturePaint tp = new TexturePaint(bi, rectangle);
    g2D.setPaint(tp);
    g2D.fill(new Rectangle2D.Float(0, 0, getWidth(), getHeight()));
}

}
  }