【发布时间】:2021-12-26 17:56:21
【问题描述】:
所以我试图在我的 java 应用程序中显示 GIF 背景,但 GIF 似乎无法正确显示 That's the GIF 但是当我在我的应用程序中显示它时,像素到处飞,它看起来不像原始的 GIF
代码:
public class PlayerPanel extends JPanel
{
Player player ;
Image img;
boolean moveFlag=false;
private HashMap<Character,Integer> keyMap=new HashMap<>();
public PlayerPanel()
{
img = (new ImageIcon("assets\\space.gif")).getImage(); //background
player = new Player(this);
keyMap.put('w',0);
keyMap.put('s',0);
keyMap.put('a',0);
keyMap.put('d',0);
addKeyListener(new KA());
setFocusable(true);
}
}
public void paintComponent(Graphics g)
{
super.paintComponent(g);
g.drawImage(img,0,0,getWidth(),getHeight(),null);
}
主要:
public class Main {
public static void main(String[] args) throws InterruptedException {
JFrame f=new JFrame("Asteroids Game");
PlayerPanel playerPanel=new PlayerPanel();
f.add(playerPanel);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.setSize(1024,700);
f.setResizable(true);
f.setVisible(true);
f.setFocusable(false);
}
【问题讨论】:
-
忘记添加paintComponent() 谢谢!
标签: java swing jframe jpanel gif