在java swing中需要为容器添加图片,或者背景图片。

提供两种简单的解决方案,一种利用JPanel,另一种利用JLabel

1.JPanel(源代码)

package oo;

import java.awt.Graphics;

import java.awt.Image;

import java.io.File;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JPanel;

public class Drawing {

JFrame jframe = new JFrame();

public static JPanel GImage = null;

public Drawing() {

initFrame();

}

// 初始化窗口

public void initFrame() {

// 利用JPanel添加背景图片

GImage = new JPanel() {

protected void paintComponent(Graphics g) {

ImageIcon icon = new ImageIcon("image\\benbenla.jpg");

Image img = icon.getImage();

g.drawImage(img, 0, 0, icon.getIconWidth(),

icon.getIconHeight(), icon.getImageObserver());

jframe.setSize(icon.getIconWidth(), icon.getIconHeight());

}

};

jframe.setTitle("测试背景图片");

jframe.add(GImage);

jframe.pack();

jframe.setVisible(true);

jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String[] args) {

new Drawing();

}

}

2.JLabel源代码

package swing.draw;

import java.awt.Image;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JLabel;

/** 利用JLabel来构建图片 */

public class Drawing2 {

JLabel jlpic = new JLabel();

JFrame jframe = new JFrame();

public Drawing2() {

init1Frame();

}

public void init1Frame() {

ImageIcon icon = new ImageIcon("image\\benbenla.jpg");

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

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

System.out.println(icon.getIconHeight() + "" + icon.getIconWidth());

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

jlpic.setHorizontalAlignment(0);

jlpic.setIcon(icon);

jframe.setSize(1366, 768);

jframe.add(jlpic);

jframe.pack();

jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

jframe.setVisible(true);

}

public static void main(String args[]) {

new Drawing2();

}

}

java swing 图片容器_Java Swing中两种设置背景图(容器图片)相关推荐

  1. java 文件写入 读取_JAVA文件的两种读取方法和三种写入方法

    在使用java对文件进行读写操作时,有多种方法可以使用,但不同的方法有不同的性能. 此文对常用的读写方法进行了整理,以备不时之需. 1.文件的读取 主要介绍两种常用的读取方法.按行读取和按字符块读取. ...

  2. php批量添加水印图片大小,解析php中两种缩放图片的函数,为图片添加水印

    有两种改变图像大小的方法.(1):ImageCopyResized() 函数在所有GD版本中有效,但其缩放图像的算法比较粗糙. (2):ImageCopyResampled(),其像素插值算法得到的图 ...

  3. java数组排序法方法_JAVA数组中五种常见排序方法

    前言: 几种常用的JAVA数组排序方法的整合. 法一:Arrays.sort() Arrays.sort()排序方法在java中是最简单且最常用的排序方法 int []arr1= {45,34,59, ...

  4. Android基础教程之-------Android中两种设置全屏的方法!!!

    在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改! 一.在代码中设置: view plaincopy to clipboardpri ...

  5. ios添加 启动画面_iOS 两种设置启动图方式的 bug 汇总

    楼主最近几天一直在纠结这个,忙到最后发现是 Apple 的锅,臣妾真搞不定呀 1.单独使用 LaunchImage 来设置启动图时: ①iOS9 系统的手机,在 APP 从后台通过 openURL 拉 ...

  6. java中两种异常类型_Java中的三种异常类型

    java中两种异常类型 Errors are the bane of users and programmers alike. Developers obviously don't want thei ...

  7. java : enum、创建文件和文件夹、删除文件和文件夹、获得项目绝对路径、写入数据到excel中、java代码中两种路径符号写法、读取、写入text文件...

    java : enum http://www.cnblogs.com/hyl8218/p/5088287.html 创建文件和文件夹.删除文件和文件夹 http://www.cnblogs.com/m ...

  8. java使用poi在word模板中替换柱状图、折线图、饼图、表格、文本、图片

    介绍 java使用poi在word模板中替换柱状图.折线图.饼图.表格.文本.图片 软件架构 安装教程 环境搭建:jdk1.8.0_291.maven1.8.0_291 IDEA工具:IntelliJ ...

  9. Java中两种抛出异常的方式

    Java中两种抛出异常的方式 在Java中有两种抛出异常的方式,一种是throw,直接抛出异常,另一种是throws,间接抛出异常. 直接抛出异常是在方法中用关键字throw引发明确的异常.当thro ...

最新文章

  1. Windows Server 2003 AD升级到Windows Server 2008 AD的方法及详细步骤
  2. 14 款命令行常用工具的替代品!
  3. JavaScript判断浏览器类型及版本
  4. 通过Android重审GET和POST请求
  5. python 生成器与迭代器
  6. nginx全部下载地址
  7. android graphics pipeline
  8. vscode Python 运行环境配置
  9. Postgres客户端编码问题
  10. mysql cast numeric,mysql decimal、
  11. shell 倒数第n列_【零基础学云计算】Shell编程之正则表达式(三)
  12. 10、configparser模块
  13. 自动刷新网页脚本_抢不到票?你离idol只差一个大麦抢票脚本。
  14. AMBA_AXI总线详解
  15. 为什么别人报价成单,而你不行?
  16. 兜兜转转还是往前了一小步
  17. 工作三年程序员收入到底多高?透露收入:网友:哇,真的好高呀!
  18. java多人聊天室与网络画板
  19. AD如何显示贴片数值并打印
  20. 【CSS】987- 十几个 CSS 高级技巧汇总

热门文章

  1. 怎么在台式计算机上写文件,怎样直接在台式电脑和笔记本电脑之间实现文件传输...
  2. ue4cmd怎么调用_虚幻引擎UE4-命令行使用的一些详细技巧
  3. 在python中可以使用if作为变量名_变量,注释,缩进,细数Python优雅风 | Python基础连载(二)...
  4. maya崩溃自动保存路径_xgen 分享在maya里制作头发失败经验
  5. c语言学习-编写递归函数用于计算n!
  6. 已有Unity工程升级到LWRP/HDRP后材质都变洋红色了,怎么办?
  7. 【专栏精选】Assetbundle入门
  8. 容器入门(5)- 在Registry之间复制镜像
  9. Vue 3开发的重要提示
  10. (五)从头开始构建风格迁移CycleGAN