在java GUI图形化设计中,Swing组件添加背景图片主要有两中情况:1,在Jpanl面板中添加背景图片,2,在jLable中添加背景图片

首先介绍一种最巧妙的背景图片添加方法,

1.利用JLabel加载图片

利用JLabel自带的setIcon(Icon icon)加载icon,并设置JLabel对象的位置和大小使其完全覆盖窗体。这是一个很取巧的办法,代码非常简单,如下所示。

JLabel lbBg = new JLabel(imageIcon);

lbBg.setBounds(0, 0, frameSize.width, frameSize.height);

this.getContentPane().add(lbBg);

然而这种方法有几个要注意的点:

(1)不能使用布局管理器

此时你需要将布局管理器设置为null,然后精确控制所有控件的大小和位置。否则,JLabel无法完整覆盖窗体。

(2)应当先添加背景JLabel,再添加其它控件。否则其它控件将被JLabel所遮挡(为什么不是后添加的遮挡先添加的?)。

(3)由于控件及窗体的尺寸需要手动控制,因此无法对背景图片进行缩放。

但是如果对JFrame全局加载图片的话,背景图会浮动在控件上方,代码部分案列:

ImageIcon icon = new ImageIcon("src/计算器/1.jpg");

icon.setImage(icon.getImage().getScaledInstance(icon.getIconWidth(),

icon.getIconHeight(), Image.SCALE_DEFAULT));

JLabel jlpic = new JLabel();

jlpic.setBounds(0, 0, 1366, 768);

jlpic.setHorizontalAlignment(0);

jlpic.setIcon(icon);

this.add(jlpic);

this.pack();

2.重载JPanel的paintComponent(Graphics g)方法

通过重载该方法,在JPanel的绘制阶段将指定图片绘制上去即可。由于背景是绘制出来的,因此不会对布局有任何影响。

示例代码如下:

@Override

public void paintComponent(Graphics g) {

super.paintComponent(g);

g.drawImage(image, 0, 0, d.width, d.height, this);

MainFrame.instance().repaint();

}

java swing背景_java Swing中添加背景图片(总结)相关推荐

  1. Vue中添加背景图片

    往一个div中添加背景图片 bgImg:为图片地址 希望能帮到你!!

  2. 简历背景图片设置html代码,怎么在简历中添加背景图片

    在简历中添加背景图片的方法二 步骤1.在菜单栏选择图片->自来文件->选择图片后->确定; 步骤2.选图片->右键-->设置图片格式->版式->衬于文字下方; ...

  3. 如何在eclipse制作的APP中添加背景图

    如何在eclipse制作的APP中添加背景图 1.首先把图片拉入drawable-hdpi中,a1.jpg(注:图片名不可为中文) 2.在.xml文件中加入android:background=&qu ...

  4. Qt中添加背景图片的方法

    Qt中添加背景图片的方法 QPalette的方法 #include #include int main(int argc, char *argv[]) { QApplication app(argc, ...

  5. 怎样在android中添加背景图片?

    怎样在android中添加背景图片? 1.打开左侧的工程文件夹.打开res中的layout,双击main.xml. 2.一般的图片是jpg格式的,要把格式转化为png格式的. 3.把PNG格式的图片拖 ...

  6. 在php中怎么给表格加背景,怎么在表格中添加背景图

    看别人的表格添加了背景图片是不是特别好看,那么你想不想学会这项技能呢?下面有两种方法让你快速对表格添加背景图,让我们一起学习一下吧! 1.改良背景法为表格添加背景图 做完一个表格,有时我们会觉得其比较 ...

  7. 电话卡插到终端服务器通话时长,通话中添加背景音的方法、终端及系统专利_专利查询 - 天眼查...

    1.一种通话中添加背景音的方法,其特征在于,包括以下步骤: 监听到来电或去电,以及开始通话时,向服务器发送获取用于本次通话中营造环境声音的音频数据的请求: 接收所述服务器反馈的对应于所述请求的至少一段 ...

  8. 怎么修改html模板里的背景,如何替换背景图模板中的背景

    原标题:如何替换背景图模板中的背景 图文排版 H5秀 小伙伴 小米,你们最近做的"假装一个标题"那个模板里的图咋替换啊,想换成自己的图,怎么点都换不了呢? 其实,这个模板中的图是作 ...

  9. java 界面艺术字,Java 在Word文档中添加艺术字

    与普通文字相比,艺术字更加美观有趣也更具有辨识度,常见于一些设计精美的杂志或宣传海报中.我们在日常工作中编辑Word文档时,也可以通过添加艺术字体来凸显文章的重点,美化页面排版.这篇文章将介绍如何使用 ...

最新文章

  1. 资源 | 深度学习图像标注工具汇总
  2. python在当前目录创建txt文件-python-在目录中创建多个文本文件的字数字...
  3. C#的显式接口和隐式接口
  4. IT项目管理总结:第八章 项目质量管理
  5. VTK:图表之TreeBFSIterator
  6. ipython源代码怎么打开_CentOS 6.4 中IPython如何启动Qt控制台和NoteBook?
  7. Unity3DAI:寻路(1):A星寻路,在Unity上用C#代码实现。
  8. 当xshell关闭时如何保持一个jar包程序在后台运行
  9. 安卓java虚拟机_Android虚拟机与Java虚拟机 两种虚拟机的比较
  10. 梦幻西游qq表情包YR
  11. WPF中使用Aforge控件
  12. JavaScript开发环境准备
  13. “大圆满”之前行--从概念到知识再到计算的共生【原力】_目录规划与提要
  14. C# Activator实例化类的一般步骤
  15. java上传文件夹文件
  16. 乘云而上,易捷行云入选“2020中国企服行业独角兽TOP50”
  17. 计算机组装方案背景图,白色系主机的另外一种搭配:联力O11MINI装机作业参考...
  18. 玩转 Windows 10 中的 Linux 子系统
  19. 苹果公司邮箱联系大全
  20. 人物画像————圆球转动效果

热门文章

  1. 支付系统高可用架构设计,写得太好了!(建议收藏)
  2. 四十四、nimbus,supervisor进程自动停止(Read a frame size of ..., which is bigger than the maximum allowable...)
  3. 简师网:国家公务员调剂条件
  4. 多元函数求极值中的a_第八节多元函数的极值及其求法.ppt
  5. MTK 安卓11 lcm AVDD及AVEE值修改
  6. 毕业论文评审意见、导师意见范文、模板
  7. android scaleanimation动画,【Android动画九章】-RotateAnimation(旋转动画)和ScaleAnimation(尺寸动画)...
  8. DOM(文档对象模型)(二)深入了解DOM节点
  9. IDEA快速去除魔法值
  10. Linux 文件编码问题及iconv命令