我构建了一个游戏,其中我想在现有的背景图像图标上添加缓冲图像,我的代码是针对这个游戏:
public class Hunter extends JFrame {
JPanel panel = new JPanel();
JLabel label = new JLabel(new ImageIcon("F:\\workspace\\HunterGame\\src\\huntergame\\background.jpg"));
BufferedImage image;
Graphics g;
Hunter(){
setSize(961, 694);
setResizable(false);
setTitle("Hunter");
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize();
this.setLocation(dim.width/2-this.getSize().width/2, dim.height/2-this.getSize().height/2);
panel.add(label);
add(panel);
addMouseListener(new MouseListener() {
@Override
public void mouseClicked(MouseEvent me) {
}
@Override
public void mousePressed(MouseEvent me) {
int x = me.getX();
int y = me.getY();
if((x>11&&x<69)&&(y>26&&y<69)){
dispose();
new menu();
}
}
@Override
public void mouseReleased(MouseEvent me) {
}
@Override
public void mouseEntered(MouseEvent me) {
}
@Override
public void mouseExited(MouseEvent me) {
}
});
try {
image = ImageIO.read(new File("F:\\workspace\\HunterGame\\src\\huntergame\\hunter.png"));
} catch (IOException ex) {
System.out.println("Exception Occurs");
}
JLabel label1 = new JLabel(new ImageIcon(image));
label.add(label1);
revalidate();
}
}
我也尝试了Graphics.drawImage()
方法,但这并没有奏效。
我的背景图像在JLabel上,标签在框架上,第二个图像label1在标签上,但我也在JPanel上尝试过,没有显示结果。
输出屏幕仅显示背景图像。
请帮我解决这个问题。
问候。
答案 0 :(得分:0)
如果要在背景标签上添加第二个标签,则需要设置标签的布局管理器。
基本代码如下:
<BuildEntry xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="blablaName" Version="r26" Author="blablaAuthor" Website="blablaWebsite">