设置面板背景

原创 2015年11月19日 20:58:11
设置面板的背景,添加的控件不会被覆盖,主要用到JPanel的

paintComponent方法画背景。并且把setOpaque方法设置成false,可以画出背景上的控件
package pic;

import java.awt.Graphics;
import java.awt.Image;
<img src="http://img.blog.csdn.net/20151119210028127?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

/**
 * 
 * 有图片的背景添加按钮之后,按钮不被覆盖
 * 
 * @author Eiffel
 * 
 */
public class Picture extends JFrame {

	JButton bt = null;
	ImageIcon btimgIcon = null;
	//JLabel jl = new JLabel("你好");

	public Picture() {

		btimgIcon = new ImageIcon("images/denglu.gif");
		bt = new JButton(btimgIcon);
		bt.setContentAreaFilled(false); //按钮透明,只显示按钮的图片

		MyPanel mp = new MyPanel();
		// mp.setOpaque(true);
		mp.setImage(new ImageIcon("images/1.jpg").getImage());

		mp.add(bt);
		//mp.add(jl);
		this.add(mp);
		this.setVisible(true);
		this.setBounds(500, 200, 300, 300);
		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

	}

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

	class MyPanel extends JPanel {

		Image img = null;

		public MyPanel() {

			setOpaque(false);

			// this.add(bt);
		}

		public void setImage(Image image) {
			this.img = image;
		}

		protected void paintComponent(Graphics g) {
			if (img != null) {// 如果图片已经初始化
				// 画出图片
				g.drawImage(img, 0, 0,300,300, null);
			}
			super.paintComponent(g);
		}
	}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

java GUI布局与设置背景

一、实现界面步骤 二、组件布局类 每种布局的用法及展示 三、添加背景
  • heart_1014
  • heart_1014
  • 2016年07月17日 10:34
  • 2253

swing中Jpanel设置透明度

课题研究中应用到要生成透明背景的电子签章,所以通过网上搜寻资料以及自己整合最终实现了这项功能。实现图如下: 关键代码如下: 1.在生成panel时,设置为透明       DrawPanel pa...
  • jcf147
  • jcf147
  • 2016年12月12日 11:16
  • 2701

JAVA GUI自定义JPanel画板背景

GUI全称是Graphical User Interface,就是图形用户界面。java的GUI应用广泛在我们生活中也很常见。很多应用使用该GUI编程设计,像点击QQ图标弹出对应的登录窗体。 JPan...
  • niaonao
  • niaonao
  • 2016年12月15日 16:27
  • 1793

Java.swing-如何为frame窗口设置背景图片

import java.awt.*; import javax.swing.*; import java.awt.Container; public class framebg { ...
  • qq695181966
  • qq695181966
  • 2014年07月14日 19:47
  • 2963

win7 中如何设置eclipse的背景色--Console

看完前面两篇文章后还剩一个不和谐的地方,如何设置Console的背景色 前面两篇文章 win7 中如何设置eclipse的背景色--编辑器http://blog.csdn.net/u01316139...
  • u013161399
  • u013161399
  • 2015年08月05日 15:29
  • 2039

【java】事件监听——通过点击不同的按钮,让面板的背景色发生相应的变化

/* * 作者:筱筱 * 功能:通过点击不同的按钮,让面板的背景色发生相应的变化 */...
  • fragile_spume
  • fragile_spume
  • 2017年04月16日 20:27
  • 368

JAVA中如何在Jframe面板插入背景图片

最近因为课设需要,做
  • Yolanda_NuoNuo
  • Yolanda_NuoNuo
  • 2014年05月06日 16:46
  • 5676

ExtJs教程----如何改变各个区域的背景色

下面是整个页面的组成部件: Ext.define('ExtJS5Example.view.portal.BodyPanel', { extend: 'Ext.container.Contain...
  • u011176794
  • u011176794
  • 2016年09月08日 16:51
  • 1842

利用JavaFx开发RIA桌面应用-Stage窗口半透明设计

介绍利用JavaFx如何设计半透明界面。
  • loongshawn
  • loongshawn
  • 2016年11月07日 23:09
  • 2599

Unity 自定义Inspector面板 样式

有时候为了开发更加方便,会重写Inspector面板或者Editor窗口。一般情况下,Unity已经将public修饰符的字段自动序列化,使得该字段能够在Inspector面板中能够被修改。而且也添加...
  • ljb81565248
  • ljb81565248
  • 2016年08月29日 17:12
  • 583
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:设置面板背景
举报原因:
原因补充:

(最多只允许输入30个字)