当前位置: 首页 > 知识库问答 >
问题:

如何在Java JFrame中放置背景图像

巫马刚洁
2023-03-14
package com.company;


import javax.imageio.ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class Main extends JFrame{
    JButton button;
    JLabel text;
    JFrame frame;
    JPanel panel;

    public static void main(String[] args) {
        new Main();
    }
    public Main(){
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setTitle("flappyBird");
        setLocationRelativeTo(null);
        setVisible(true);
        setSize(new Dimension(100,100));
        setExtendedState(JFrame.MAXIMIZED_BOTH);

        BufferedImage img = null;
        try {
            img = ImageIO.read(new File("C:\\Users\\m11\\Documents\\FlappyBird\\spirit\\base.png"));
        } catch (IOException e) {
            e.printStackTrace();
        }
        Image dimg = img.getScaledInstance(800, 508, Image.SCALE_SMOOTH);
        ImageIcon imageIcon = new ImageIcon(dimg);
        setContentPane(new JLabel(imageIcon));
    }

}

共有1个答案

程磊
2023-03-14

请尝试以下示例:

JFrame f = new JFrame();
try {
    f.setContentPane(new JLabel(new ImageIcon(ImageIO.read(new File("test.jpg")))));
} catch (IOException e) {
    e.printStackTrace();
}
f.pack();
f.setVisible(true);

或者,另一个伟大的方式来实现你的目标将是使用背景面板。

并且请尽量避免使用绝对路径,它们几乎总是在更改目录或系统时破坏应用程序

 类似资料:
  • 我有一个背景图像和它周围的边框,所以我需要把边框放在我的背景图像下,就像它在我的草稿中显示的那样。草稿图像 现在我有这样的东西。我的结果 我如何修复它? CSS .hero图像{ 位置:相对; 宽度:100%; 左边距:44px; 最大宽度:716px; 高度:626px; 背景图像:url(“/img/hero/hero bg.jpg”) 背景重复:不重复; 背景位置:-150px; 背景剪辑:

  • 我正试图为主页设置一个背景图像。我是从屏幕开始获得图像位置,填充宽度,但不是高度。我的代码中是否遗漏了什么?颤振有图像标准吗?图像缩放是否基于每个手机的屏幕分辨率?

  • 问题内容: 我正在使用BlueJ作为IDE使用Java开发一个简单的平台游戏。现在,我在游戏中使用多边形和简单形状绘制了玩家/敌人的精灵,平台和其他物品。最终,我希望将它们替换为实际图像。 现在,我想知道将图像(URL或本地来源)设置为游戏窗口/画布的“背景”的最简单解决方案是什么? 如果编程时间不是太长或太复杂,我将不胜感激,因为我的编程技能不是很好,我想使我的程序尽可能简单。请为示例代码提供注

  • 问题内容: 是否可以将div中的背景图像居中放置?我已经尝试了几乎所有内容-但没有成功: 这可能吗? 问题答案:

  • 在这里,我正试图将整个图像作为卡片视图的背景。但如图所示,它占用了一些空间。我尝试了和以及其他方法,但它没有响应。在附加的图像中,紫色表示占用的空空间。我需要的空间需要占用与背景图像。这是我的代码。 这是我的代码输出的图像

  • 我有一个线性布局,如下所示: