我正在学习如何在java中使用Gui。目前我正在尝试制作一个简单的程序,打开一个Gui并将图像绘制到背景中。问题是背景是完全白色而不是图像。
代码:
Main.java:
package com.flaghacker.buckygame;
public class Main
{
public static void main(String[] args)
{
GuiFrame guiFrame = new GuiFrame();
}
}
GuiFrame.java:
package com.flaghacker.buckygame;
import javax.swing.JFrame;
public class GuiFrame extends JFrame
{
private GuiPanel guiPanel;
public GuiFrame()
{
//General
super("Title");
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Size
this.setSize(1100, 650);
this.setResizable(true);
//Components
guiPanel = new GuiPanel();
this.add(guiPanel);
//Final
this.setVisible(true);
}
}
GuiPane.java:
package com.flaghacker.buckygame;
import javax.swing.ImageIcon;
import javax.swing.JPanel;
import java.awt.Graphics;
import java.awt.Image;
public class GuiPanel extends JPanel
{
private Image backGround;
public GuiPanel()
{
backGround = new ImageIcon("D:\\Install\\Java Projects\\Testing\\Bucky\\Back.jpg").getImage();
}
@Override
public void paint(Graphics g)
{
super.paint(g);
g.drawImage(backGround, 0, 0, null);
}
}
答案 0 :(得分:0)
我测试你的代码并且它有效...可能的问题是两个
首先)你的形象不在
"D:\\Install\\Java Projects\\Testing\\Bucky\\Back.jpg"
我建议你使用
"D:/Install/Java Projects/Testing/Bucky/Back.jpg"
并验证 不区分大小写。
秒)图像Back.jpg的宽度和高度更高,为1100 650,因此您只显示左上角的图像