java swing 图片容器_Java Swing中两种设置背景图(容器图片)
在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中两种设置背景图(容器图片)相关推荐
- java 文件写入 读取_JAVA文件的两种读取方法和三种写入方法
在使用java对文件进行读写操作时,有多种方法可以使用,但不同的方法有不同的性能. 此文对常用的读写方法进行了整理,以备不时之需. 1.文件的读取 主要介绍两种常用的读取方法.按行读取和按字符块读取. ...
- php批量添加水印图片大小,解析php中两种缩放图片的函数,为图片添加水印
有两种改变图像大小的方法.(1):ImageCopyResized() 函数在所有GD版本中有效,但其缩放图像的算法比较粗糙. (2):ImageCopyResampled(),其像素插值算法得到的图 ...
- java数组排序法方法_JAVA数组中五种常见排序方法
前言: 几种常用的JAVA数组排序方法的整合. 法一:Arrays.sort() Arrays.sort()排序方法在java中是最简单且最常用的排序方法 int []arr1= {45,34,59, ...
- Android基础教程之-------Android中两种设置全屏的方法!!!
在开发中我们经常需要把我们的应用设置为全屏,这里我所知道的有俩中方法,一中是在代码中设置,另一种方法是在配置文件里改! 一.在代码中设置: view plaincopy to clipboardpri ...
- ios添加 启动画面_iOS 两种设置启动图方式的 bug 汇总
楼主最近几天一直在纠结这个,忙到最后发现是 Apple 的锅,臣妾真搞不定呀 1.单独使用 LaunchImage 来设置启动图时: ①iOS9 系统的手机,在 APP 从后台通过 openURL 拉 ...
- java中两种异常类型_Java中的三种异常类型
java中两种异常类型 Errors are the bane of users and programmers alike. Developers obviously don't want thei ...
- java : enum、创建文件和文件夹、删除文件和文件夹、获得项目绝对路径、写入数据到excel中、java代码中两种路径符号写法、读取、写入text文件...
java : enum http://www.cnblogs.com/hyl8218/p/5088287.html 创建文件和文件夹.删除文件和文件夹 http://www.cnblogs.com/m ...
- java使用poi在word模板中替换柱状图、折线图、饼图、表格、文本、图片
介绍 java使用poi在word模板中替换柱状图.折线图.饼图.表格.文本.图片 软件架构 安装教程 环境搭建:jdk1.8.0_291.maven1.8.0_291 IDEA工具:IntelliJ ...
- Java中两种抛出异常的方式
Java中两种抛出异常的方式 在Java中有两种抛出异常的方式,一种是throw,直接抛出异常,另一种是throws,间接抛出异常. 直接抛出异常是在方法中用关键字throw引发明确的异常.当thro ...
最新文章
- Windows Server 2003 AD升级到Windows Server 2008 AD的方法及详细步骤
- 14 款命令行常用工具的替代品!
- JavaScript判断浏览器类型及版本
- 通过Android重审GET和POST请求
- python 生成器与迭代器
- nginx全部下载地址
- android graphics pipeline
- vscode Python 运行环境配置
- Postgres客户端编码问题
- mysql cast numeric,mysql decimal、
- shell 倒数第n列_【零基础学云计算】Shell编程之正则表达式(三)
- 10、configparser模块
- 自动刷新网页脚本_抢不到票?你离idol只差一个大麦抢票脚本。
- AMBA_AXI总线详解
- 为什么别人报价成单,而你不行?
- 兜兜转转还是往前了一小步
- 工作三年程序员收入到底多高?透露收入:网友:哇,真的好高呀!
- java多人聊天室与网络画板
- AD如何显示贴片数值并打印
- 【CSS】987- 十几个 CSS 高级技巧汇总
热门文章
- 怎么在台式计算机上写文件,怎样直接在台式电脑和笔记本电脑之间实现文件传输...
- ue4cmd怎么调用_虚幻引擎UE4-命令行使用的一些详细技巧
- 在python中可以使用if作为变量名_变量,注释,缩进,细数Python优雅风 | Python基础连载(二)...
- maya崩溃自动保存路径_xgen 分享在maya里制作头发失败经验
- c语言学习-编写递归函数用于计算n!
- 已有Unity工程升级到LWRP/HDRP后材质都变洋红色了,怎么办?
- 【专栏精选】Assetbundle入门
- 容器入门(5)- 在Registry之间复制镜像
- Vue 3开发的重要提示
- (五)从头开始构建风格迁移CycleGAN