在JFrame Java的构造函数中调用Graphics.drawImage

时间:2016-04-22 21:11:49

标签: java swing graphics jframe

所以我试图找出如何使用JFrames和Graphics,并且只是为了学习目的而编写一个小程序。我遇到了一个问题。我的课程JFrameLeaning扩展了JFrame。我想要做的是为它加载的图像设置窗口大小,然后显示图像。大小调整很好,但图像不显示,只是一个空窗口。我查看了文档,但我无法弄清楚图像无法显示的原因。对不起,如果这个问题很明显。这是班级

//imports
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.*;
import javax.imageio.ImageIO;
import javax.swing.JFrame;

// class to learn how to use JFrames
public class JFrameLearning extends JFrame{
    public BufferedImage tileset;
    public Graphics tilesetGraphics;

    // 0 argument constructor
    public JFrameLearning(){
        // load the tileset image
        try {
            tileset = ImageIO.read(new File("Images/Mountain.png"));
        } catch (IOException e) {e.printStackTrace();}
        try {
            tilesetGraphics = tileset.getGraphics();
        } catch (NullPointerException e) {e.printStackTrace();}
        this.setSize(tileset.getWidth(),tileset.getHeight());
        this.setVisible(true);
        tilesetGraphics.drawImage(tileset, 0, 0, tileset.getWidth(),    tileset.getHeight(), this);
    }// 0 argument constructor


}// class

0 个答案:

没有答案