Nanashi-softプログラマ専用Javaアプリケーション


◇Javaアプリケーション-PNG画像を表示する-

◎色々な方法がある
Javaで画像ファイルを読み込む方法は色々あります
大抵どのバージョンでも使える Toolkitを使った方法で説明します

    Image img1 = Toolkit.getDefaultToolkit().getImage("test.png");

この1行で画像ファイルをイメージとして読み込めます
後は普通に drawImageを使って表示するだけです

◎サンプルソース(未完成)

import java.awt.*;
import java.awt.event.*;

public class fst extends Frame{
  //裏画面用変数
  static Image ura;
  static Graphics ug;

  public static final void main(final String[] args){
    //ウィンドウ生成
    Frame app=new Frame();
    //タイトル設定
    app.setTitle("Title");
    //ウィンドウサイズ設定(タイトルや枠も含んだサイズ)
    app.setSize(240, 240);
    //キャンバスを配置
    fstCanvas cvs=new fstCanvas();
    app.add(cvs);
    //ウィンドウ表示
    app.setVisible(true);
    //裏画面生成
    ura = cvs.createImage(240, 240);
    ug = ura.getGraphics();

    Image img1 = Toolkit.getDefaultToolkit().getImage("test.png");

    //60fps制御用変数初期化
    long t1 = System.currentTimeMillis();
    //無限ループ
    while (true){
      ug.drawImage(img1, 0, 0, null);

      //画面再描画
      cvs.repaint();
      //60fpsになるようにウェイトを入れる
      while (System.currentTimeMillis() < t1 + 1000/60){
      }
      //次のフレーム用の時間に進める
      t1 += 1000/60;
    }
  }

  static class fstCanvas extends Canvas{
    public void paint(Graphics g){
      //裏画面を実画面にコピー
      g.drawImage(ura, 0, 0, null);
    }

    //updateメソッドを乗っ取って,画面クリアを防ぐ
    public void update(Graphics g){
        paint(g);
    }
  }
}




TOPプログラマ専用Javaアプリケーション