It's not working very well. When the window opens, it is blank. I have
to minimize it, then right click on the window in the Windows bar at
the bottom of the screen, in the right-click menu select
"Maximize"...when it maximizes, then the image appears...but it doesn't
appear the first time around when the window opens. What could I be
doing wrong?
Here's the code for my content pane:
public
class
BackgroundImagePanel extends
JComponent {
private
Image backgroundImage = null
;
/**
* Constructor
*/
public
BackgroundImagePanel() {
super
();
}
/**
* Returns the background image
* @return Background image
*/
public
Image getBackgroundImage() {
return
backgroundImage;
}
/**
* Sets the background image
* @param backgroundImage Background image
*/
public
void
setBackgroundImage(Image backgroundImage) {
this.backgroundImage = backgroundImage;
}
/**
* Overrides the painting to display a background image
*/
protected
void
paintComponent(Graphics g) {
if
(isOpaque()) {
g.setColor(getBackground());
g.fillRect(0, 0, getWidth(), getHeight());
}
if
(backgroundImage != null
) {
g.drawImage(backgroundImage,0,0,this
);
}
}
}
And here's the code for my main frame:
public
class
MainFrame extends
JFrame {
Image backImage;
/**
* Constructor
*/
public
MainFrame() {
super
(""
);
//handle window closing
this.addWindowListener(new
WindowAdapter() {
public
void
windowClosing(WindowEvent e) {
System.exit(0);
}
}
);
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
//get background image
backImage = Toolkit.getDefaultToolkit().getImage("wallpaper_adrift.jpg"
);
BackgroundImagePanel contentPane = new
BackgroundImagePanel();
contentPane.setBackgroundImage(backImage);
this.setContentPane(contentPane);
}
/**
* Main
* @param args Command line arguments
*/
public
static
void
main(String[] args) {
MainFrame frame = new
MainFrame();
frame.setVisible(true
);
}
}
分享到:
相关推荐
### JFrame 添加背景图片详解 在Java Swing中,我们经常需要为`JFrame`窗口设置背景图片来提升用户体验或实现特定的设计需求。本文将详细介绍如何在`JFrame`中添加背景图片,并通过一个示例程序来具体说明实现过程...
对JFrame窗口进行了重写 最大最小化按钮可以改变(我用的是qq上的最大最小化按钮图标) 对JFrame进行更改 得到了自己想要的窗口 本窗口是用来做局域聊天窗口特别设计的 详细 内容 代码都有详细注释谢谢下载
这是Netbeans为jframe加载背景图片的办法,尽管看起来很简单。但在我不会之前,怎么都搞不到一起。会了之后,原来一行代码也不用写,就可以生成了 该资源:图文步骤俱全,绝对可以看明白。欢迎留言
在NetBeans中添加背景图片是一项常见的个性化设置任务,可以让你的开发环境更加独特且符合个人审美。NetBeans是一个流行的开源集成开发环境(IDE),支持多种编程语言,如Java、C++、PHP等。通过自定义背景图片,...
在Java Swing中,设置图像作为JFrame的背景是一项常见的任务,可以增强用户界面的美观性。JFrame是Java图形用户界面(GUI)的基础组件,它提供了窗口的基本结构。要实现这个功能,我们需要利用Swing的一些核心类和...
本文将介绍两种在JFrame中添加背景图片的方法。 1. 使用自定义面板添加图片 第一种方法涉及到创建一个新的JPanel子类,并在其中添加图片。首先,你需要创建一个MyPanel类,继承自JPanel。在MyPanel类中,重写...
通过使用 Java 的图形用户界面(GUI)组件,例如 JFrame、JPanel、JLabel 等,可以轻松地将背景图片添加到 GUI 界面中。本文将详细介绍如何使用 Java 添加背景图片到 GUI 界面中。 首先,需要导入相关的包,包括 ...
在Java编程中,给面板(Panel)或窗体(JFrame)添加背景图片是一个常见的需求,这不仅可以增加用户界面的美观性,也能提供更丰富的交互体验。以下将详细讲解如何在Java Swing中实现这一功能。 首先,我们需要了解...
本话题将深入探讨如何在`JFrame`中加载并显示图片,这对于开发具有图形用户界面(GUI)的应用程序至关重要。我们将通过分析提供的`ImagePanelJFrame.java`源码来了解具体实现方法。 首先,`JFrame`类继承自`javax....
JFrame frame = new JFrame("Java 图片背景窗口示例"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); BackgroundPanel panel = new BackgroundPanel("/1.JPG"); frame.getContentPane().add(panel)...
在Java的Swing库中创建GUI界面时,我们经常需要为窗口添加个性化设计,比如设置登录界面的背景图片。这个任务可以通过使用`JLabel`组件和`ImageIcon`类来实现。下面将详细介绍如何实现这一功能。 首先,我们需要...
在提供的压缩包文件中,可能包含了一些示例代码或者资源文件,如图片、字体等,这些都可以帮助你进一步实现自定义的`JFrame`窗体。记得查看源代码,学习并理解其中的实现细节,以便在自己的项目中应用这些技术。
JFrame frame = new JFrame("背景图片示例"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(800, 600); BackgroundPanel panel = new BackgroundPanel(image); frame.add(panel); ...
开发者可以通过设置JFrame的大小、位置、边框、背景色等属性来定制窗口外观,并通过add()方法添加其他组件到JFrame上。 JPanel是Swing中另一个重要的组件,它是一个空白容器,可以用来放置其他的组件或者绘制自定义...
在Java编程中,创建带有背景图片的窗体并在此基础上添加控件,如按钮,是一项常见的任务。在GUI(图形用户界面)设计中,这样的视觉效果可以提升用户体验,使应用程序更具吸引力。以下将详细介绍如何在Java中实现这...
特别是,在做页面背景图片可随浏览器窗口大小调整时,我的基础知识运用不熟练的缺点就表现出来了。 例如:今天下午做的页面背景时,由于图片过大,直接引用时,导致屏幕无法显示完全。 实际解决它的方法很简单: ...
描述中提到的"JFrame游戏"可能包含多个图像资源,比如`myfish1.png`和`myfish0.png`,它们可能被用作游戏中的角色或背景。开发者通常会使用ImageIcon类加载这些图片,并将它们与JLabel关联,然后将JLabel添加到...
加载背景图片通常是在JFrame或类似的顶级容器上进行的。 加载背景图片的方法通常有两种:一种是直接设置组件的背景图片,另一种是利用布局管理器创建一个覆盖整个窗口的图片组件。这里我们主要介绍后者,因为这种...
要设置背景图,我们可以将图片加载到`JLabel`中,然后调整`JFrame`的大小以适应图片。下面是一个使用`JLabel`的例子: ```java public class Drawing2 { JLabel jlpic = new JLabel(); JFrame jframe = new ...
本示例主要探讨如何实现不规则图片背景效果,特别是在登录框等界面设计中,这种效果可以增加界面的独特性和视觉吸引力。以下是对实现这一功能的详细讲解。 首先,我们需要理解Swing中的组件和背景设置。`JComponent...