`

jframe 图片背景

阅读更多

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添加背景图片

    ### JFrame 添加背景图片详解 在Java Swing中,我们经常需要为`JFrame`窗口设置背景图片来提升用户体验或实现特定的设计需求。本文将详细介绍如何在`JFrame`中添加背景图片,并通过一个示例程序来具体说明实现过程...

    更改标题栏背景并重写JFrame窗口

    对JFrame窗口进行了重写 最大最小化按钮可以改变(我用的是qq上的最大最小化按钮图标) 对JFrame进行更改 得到了自己想要的窗口 本窗口是用来做局域聊天窗口特别设计的 详细 内容 代码都有详细注释谢谢下载

    Netbeans java GUI 背景图片加载图文攻略

    这是Netbeans为jframe加载背景图片的办法,尽管看起来很简单。但在我不会之前,怎么都搞不到一起。会了之后,原来一行代码也不用写,就可以生成了 该资源:图文步骤俱全,绝对可以看明白。欢迎留言

    NetBeans中添加背景图片附源码

    在NetBeans中添加背景图片是一项常见的个性化设置任务,可以让你的开发环境更加独特且符合个人审美。NetBeans是一个流行的开源集成开发环境(IDE),支持多种编程语言,如Java、C++、PHP等。通过自定义背景图片,...

    在jframe中将图像设置为背景图像

    在Java Swing中,设置图像作为JFrame的背景是一项常见的任务,可以增强用户界面的美观性。JFrame是Java图形用户界面(GUI)的基础组件,它提供了窗口的基本结构。要实现这个功能,我们需要利用Swing的一些核心类和...

    Java中JFrame添加图片的两种方法.pdf

    本文将介绍两种在JFrame中添加背景图片的方法。 1. 使用自定义面板添加图片 第一种方法涉及到创建一个新的JPanel子类,并在其中添加图片。首先,你需要创建一个MyPanel类,继承自JPanel。在MyPanel类中,重写...

    Java程序添加漂亮背景图片的方法

    通过使用 Java 的图形用户界面(GUI)组件,例如 JFrame、JPanel、JLabel 等,可以轻松地将背景图片添加到 GUI 界面中。本文将详细介绍如何使用 Java 添加背景图片到 GUI 界面中。 首先,需要导入相关的包,包括 ...

    如何给面板或窗体添加背景图片

    在Java编程中,给面板(Panel)或窗体(JFrame)添加背景图片是一个常见的需求,这不仅可以增加用户界面的美观性,也能提供更丰富的交互体验。以下将详细讲解如何在Java Swing中实现这一功能。 首先,我们需要了解...

    JFrame中加载图片

    本话题将深入探讨如何在`JFrame`中加载并显示图片,这对于开发具有图形用户界面(GUI)的应用程序至关重要。我们将通过分析提供的`ImagePanelJFrame.java`源码来了解具体实现方法。 首先,`JFrame`类继承自`javax....

    java用图片作为窗口的背景

    JFrame frame = new JFrame("Java 图片背景窗口示例"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); BackgroundPanel panel = new BackgroundPanel("/1.JPG"); frame.getContentPane().add(panel)...

    Swing GUI设置登录界面的背景图片并把内容放到图片上面源码

    在Java的Swing库中创建GUI界面时,我们经常需要为窗口添加个性化设计,比如设置登录界面的背景图片。这个任务可以通过使用`JLabel`组件和`ImageIcon`类来实现。下面将详细介绍如何实现这一功能。 首先,我们需要...

    java自定义JFrame风格窗体

    在提供的压缩包文件中,可能包含了一些示例代码或者资源文件,如图片、字体等,这些都可以帮助你进一步实现自定义的`JFrame`窗体。记得查看源代码,学习并理解其中的实现细节,以便在自己的项目中应用这些技术。

    java设置背景图片源代码

    JFrame frame = new JFrame("背景图片示例"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setSize(800, 600); BackgroundPanel panel = new BackgroundPanel(image); frame.add(panel); ...

    用java JFrame,JPanel写的大鱼吃小鱼小游戏

    开发者可以通过设置JFrame的大小、位置、边框、背景色等属性来定制窗口外观,并通过add()方法添加其他组件到JFrame上。 JPanel是Swing中另一个重要的组件,它是一个空白容器,可以用来放置其他的组件或者绘制自定义...

    java 如何在窗体背景图片上加控件

    在Java编程中,创建带有背景图片的窗体并在此基础上添加控件,如按钮,是一项常见的任务。在GUI(图形用户界面)设计中,这样的视觉效果可以提升用户体验,使应用程序更具吸引力。以下将详细介绍如何在Java中实现这...

    背景图片随屏幕大小变化问题的解决方法

    特别是,在做页面背景图片可随浏览器窗口大小调整时,我的基础知识运用不熟练的缺点就表现出来了。 例如:今天下午做的页面背景时,由于图片过大,直接引用时,导致屏幕无法显示完全。 实际解决它的方法很简单: ...

    JFrame游戏

    描述中提到的"JFrame游戏"可能包含多个图像资源,比如`myfish1.png`和`myfish0.png`,它们可能被用作游戏中的角色或背景。开发者通常会使用ImageIcon类加载这些图片,并将它们与JLabel关联,然后将JLabel添加到...

    JAVA GUI 开发---登录界面加载背景图片

    加载背景图片通常是在JFrame或类似的顶级容器上进行的。 加载背景图片的方法通常有两种:一种是直接设置组件的背景图片,另一种是利用布局管理器创建一个覆盖整个窗口的图片组件。这里我们主要介绍后者,因为这种...

    java背景设置的两种方式

    要设置背景图,我们可以将图片加载到`JLabel`中,然后调整`JFrame`的大小以适应图片。下面是一个使用`JLabel`的例子: ```java public class Drawing2 { JLabel jlpic = new JLabel(); JFrame jframe = new ...

    JAVA 实现不规则图片背景效果

    本示例主要探讨如何实现不规则图片背景效果,特别是在登录框等界面设计中,这种效果可以增加界面的独特性和视觉吸引力。以下是对实现这一功能的详细讲解。 首先,我们需要理解Swing中的组件和背景设置。`JComponent...

Global site tag (gtag.js) - Google Analytics