Java中的Jframe,Eclipse不显示

时间:2013-04-02 16:00:53

标签: java eclipse swing jframe

我有一个Eclipse的问题,它没有从我的计算机上的java代码打开JFrame,但它适用于我的朋友计算机,我该怎么办? (它也没有显示任何错误)

以下是创建JFrame的文件:

package frame;

import java.awt.BorderLayout;
import java.awt.event.KeyListener;
import java.awt.event.KeyEvent;
import javax.swing.Timer;

import java.util.ArrayList;

import javax.swing.*;




public class Design implements KeyListener {

    private JFrame mainFrame;
    private Theme theme;
    private ImageMario mario;
    boolean right=false;
    boolean left=false;
    boolean up=false;
    boolean down=false;
    private ArrayList<String> keys = new ArrayList<String>();
    public int counterLoads;
    private ArrayList<Integer> relief;
    private Timer timer;



    public Design(ArrayList<Integer> rel, int minutes){
        this.timer = new Timer(minutes*60000, new TimeEnd(this));
        this.relief =rel;
        this.mario = new ImageMario(100,770, this.relief);
        this.mainFrame = new JFrame("Super Mario Bros");
        this.mainFrame.setFocusable(true);
        this.mainFrame.addKeyListener(this);
        this.theme = new Theme(relief, 3000);
        this.theme.setLayout(new BorderLayout());
        this.mainFrame.setContentPane(this.theme);
        this.mainFrame.getContentPane().add(this.mario);
        this.mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.mainFrame.setSize(1440, 830);;
        this.mainFrame.setVisible(true);

    }    
}

这是主要功能所在的文件:

import java.util.ArrayList;

import frame.Design;
import frame.ImageRelief;

public class SuperMarioBros{

public static void main(String[] args){
    ImageRelief r = new ImageRelief(3000);
    ArrayList<Integer> relief = r.generateRelief();
    new Design(relief, 3);  
}
}

这是主题文件:

package frame;

import java.awt.*;

import java.awt.Image;
import java.util.ArrayList;

import javax.swing.*;


public class Theme extends JPanel {

private ArrayList<Integer> rel;
private int km;
private Image img = new ImageIcon(this.getClass().getResource("/Images/ground.png")).getImage();
private Image bg = new ImageIcon(this.getClass().getResource("/Images/background.jpg")).getImage();

public Theme(ArrayList<Integer> r, int k){
    this.rel = r;
    this.km = k;

    }

    public void paintComponent(Graphics g) {
        int i=0;
        g.drawImage(this.bg, 0, 0, getWidth(), getHeight(), this);
        while (i < this.km){
        g.drawImage(this.img, i, this.rel.get(i/100), 100, 220, this);
        i +=100;
        }
    }
}

谢谢!

0 个答案:

没有答案