JPEG ファイルを表示する

JPEG ファイルを入力して Window に貼り付けて表示します。

前田稔の超初心者のプログラム入門

プログラムの作成

  1. メモ帳などでタイプして Jpeg.java の名前で保存して下さい。
    //★ JPEG 画像を表示する    前田 稔
    import java.awt.*;
    import javax.swing.*;
    
    class Jpeg extends JFrame
    {   static  Image   img;
    
        // Constructor
        public Jpeg()
        {   super("Win JPEG");
            img = getToolkit().getImage("ayu.jpg");
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setSize(320, 230);
            setVisible(true);
        }
    
        // Main
        public static void main(String args[])
        {   new Jpeg();
        }
    
        // Paint Method
        public void paint(Graphics g)
        {   super.paint(g);
            if (img!=null)
            {   g.drawImage(img,16,40,this);
            }
        }
    }
    
  2. JPEG の画像(ayu.jpg)をプログラムと同じフォルダーに格納して下さい。
    テストするときは、適当なサイズの JPEG 画像であれば何でもかまいません。
  3. ソースプログラムをコンパイルして class オブジェクトを実行して下さい。
    Windows の画面に JPEG の画像が表示されたら完成です。

プログラムの説明

  1. Swing(スィング)を使ったプログラムの基本的な説明は Swing を使って、色を設定して線を描く を参照して下さい。
  2. class Jpeg は JFrame を継承しています。
    Image img; は画像データ(イメージ)の Object です。
        import java.awt.*;
        import javax.swing.*;
    
        class Jpeg extends JFrame
        {   static  Image   img;
        
  3. Constructor です。
    super() で継承したクラスの Constructor を呼び出します。
    getImage() でカレントディレクトリから JPEG 画像を入力します。
    Java で表示できる画像の形式は GIF, JPEG, PNG です。
    setSize() で Window(Frame) のサイズを設定します。
    setVisible() で表示します。
        // Constructor
        public Jpeg()
        {   super("Win JPEG");
            img = getToolkit().getImage("ayu.jpg");
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setSize(320, 230);
            setVisible(true);
        }
        
  4. 画像を描画するメソッドです。
    super.paint(g) で Window を初期設定(クリア)します。
    img が設定されていること(img!=null)を確かめて、g.drawImage() で画像を描画します。
        // Paint Method
        public void paint(Graphics g)
        {   super.paint(g);
            if (img!=null)
            {   g.drawImage(img,16,40,this);
            }
        }
        

【NOTE】

getImage() で画像のロードに失敗すると「null が返されます」の記述を見たのですが、どうも null にはならないようです。

超初心者のプログラム入門(Java2)