当前位置: 首页 > 面试题库 >

JPanel不显示背景图像

车诚
2023-03-14
问题内容

这是一个非常简单的程序,我已尽力而为,但JPanel并未提供背景图片。我只希望面板上有一个简单的背景图像。

这是我的代码:

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

class PanelEx extends JPanel
{
    BufferedImage img;

    PanelEx()
    {
        try
        {
            img = ImageIO.read(new File("C:/Users/Pictures/s_4261.jpg"));
        }
        catch(Exception ex)
        {
            ex.printStackTrace();
        }
    }
    public void printComponent(Graphics g)
    {
        g.drawImage(img,0,0,null);
    }
}

class JPanelEx2 extends JFrame
{
    PanelEx pe;

    public static void main(String args[])
    {
        new JPanelEx2();
    }

    JPanelEx2()
    {
        pe = new PanelEx();

        add(pe);
        setTitle("JPanel Title");
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
        setSize(320,240);
        setVisible(true);
    }
}

提前致谢


问题答案:

更换

public void printComponent(Graphics g) {

@Override
public void paintComponent(Graphics g) {
  super.paintComponent(g);


 类似资料:
  • 问题内容: 这是我的代码,它确实找到了图像,所以这不是我关心的问题,我关心的是如何使该图像成为面板的背景。我正在尝试使用Graphics,但是我不起作用,有什么想法吗?请?? 问题答案: 您的代码中有一个错误。在取消引用之前,将其设置为该行。这肯定会抛出一个。与其声明自己的Graphics对象,不如使用传递给要用于绘画的方法的那个。要在Swing中执行此操作,您应该实现绘制图像的方法,如下所示:

  • 问题内容: 如何在JPANEL上放置图像背景? 问题答案: 这是一个解释。

  • 这是我之前一个问题的后续问题。我正在制作一个java游戏,它基本上是一个带有角色图像的JFrame,一些由fillRect()组成的healthbars,它们都位于背景图像之上。问题是健康栏和角色出现了,但背景图像没有出现。 下面是Game类的简化版本,其中包含main()和render()方法: 以下是BackGroundImage课程: 我关心的是render()方法重用“g”图形对象,将所有

  •  背景,就是衬在文字和前景后面显示的东西。KAG 中(默认设定)的是读入 640×480 大小的背景图片。  首先,将想要显示的 640×480 的图片放进 bgimage 文件夹中。把图片命名为 bg0.jpg 。KAG 的 LZH 档里并没有包含背景图片,请自己准备一张吧(^^)  接着,把在 显示文字相关 里所使用的剧本档(first.ks)内容修改成以下这样。 [imagestorage=

  • 因此,我正在编写一个程序,在这个程序中,我最终希望一个按钮在按下时改变颜色。到目前为止,我的困境是: -尽管切换了setOpaque()和setContentAreaFilled()的真/假,但我无法获取当前设置为显示背景色的JButton。在尝试添加ActionListener之前,我希望能够做到这一点。 -我想用类似于JToggleButton()的东西来改变颜色,但是我想用背景而不是图标来改

  • 问题内容: 我目前有用于创建JOptionPane的代码,无论我将其设置为什么大小,它都会将图像平铺到背景上:) 我遇到的问题是使用相同的代码将图像添加到JFrame中的JPanel背景中,这是我的问题: 如果有更好的方法可以做到,而代码少得多,那就更好了,我们将不胜感激。我对背景进行排序后,确实需要在背景顶部添加标签和按钮。 背景需要平铺,因为应用程序将在JFrame中具有几个具有不同图案背景的