我正在制作一个数字口袋妖怪卡片式的游戏。当我尝试绘制任何图像时,JFrame保持空白。这可能是一个简单的错误,但我一直无法找到解决方案。在Stack Overflow上,我看到很多类似于我的问题,尽管他们的解决方案不适用于我的代码。下面的代码: 对JFrame类:JPanel没有绘画,JFrame保持空白
import javax.swing.JFrame;
public class Rocks extends JFrame{
public Rocks(){
setVisible(true);
setTitle("Rocks Card Game");
setSize(1200,297);
add(new Display());
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
new Rocks();
}
}
JPanel类的:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
public class Display extends JPanel{
Image granite;
public Display(){
granite = new ImageIcon("C:\\Users\\Raj\\Pictures\\Granite.png").getImage();
setBackground(Color.black);
}
public void paint(Graphics g){
Graphics2D g2d = (Graphics2D) g;
g2d.drawImage(granite,0,0,null);
}
}
没有必要风俗画。只需使用带有图标的JLabel。 – camickr
很高兴你把它分类。 :) –