java的JDesktopPane背景图片自适应窗口大小示例
来源:互联网 发布:淘宝退货纸条怎么写 编辑:程序博客网 时间:2024/05/15 23:54
import java.awt.BorderLayout;
import java.awt.Image;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.net.URL;
import javax.swing.ImageIcon;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**
*
* @author ZRL
* @date 2017/11/6
*/
public class AddBackgroundToJDesktopPane extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
AddBackgroundToJDesktopPane desktopPane = new AddBackgroundToJDesktopPane();
desktopPane.setVisible(true);
}
public AddBackgroundToJDesktopPane() {
super();
setTitle("桌面面板添加背景图片示例");
setBounds(100, 100, 700, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//创建一个桌面面板
final JDesktopPane desktopPane = new JDesktopPane();
getContentPane().add(desktopPane, BorderLayout.CENTER);
//创建一个标签组件,用于放置背景图片
final JLabel backgroundLabel = new JLabel();
//需要自己导入一张背景图片到src目录下
URL resource = this.getClass().getResource("/back.jpg");
ImageIcon icon = new ImageIcon(resource);
//压缩背景图片,使其适应窗口大小
icon.setImage(icon.getImage().getScaledInstance(this.getWidth(), this.getHeight(), Image.SCALE_DEFAULT));
backgroundLabel.setIcon(icon);
backgroundLabel.setBounds(0, 0, this.getWidth(), this.getHeight());
desktopPane.add(backgroundLabel, new Integer(Integer.MIN_VALUE));
//当改变窗口大小时,自动调整背景图片大小
getContentPane().addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent e) {
int width = e.getComponent().getWidth();
int heigth = e.getComponent().getHeight();
icon.setImage(icon.getImage().getScaledInstance(width,heigth, Image.SCALE_DEFAULT));
backgroundLabel.setBounds(0, 0,width,heigth);
}
});
}
}
import java.awt.Image;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.net.URL;
import javax.swing.ImageIcon;
import javax.swing.JDesktopPane;
import javax.swing.JFrame;
import javax.swing.JLabel;
/**
*
* @author ZRL
* @date 2017/11/6
*/
public class AddBackgroundToJDesktopPane extends JFrame{
/**
*
*/
private static final long serialVersionUID = 1L;
public static void main(String[] args) {
AddBackgroundToJDesktopPane desktopPane = new AddBackgroundToJDesktopPane();
desktopPane.setVisible(true);
}
public AddBackgroundToJDesktopPane() {
super();
setTitle("桌面面板添加背景图片示例");
setBounds(100, 100, 700, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//创建一个桌面面板
final JDesktopPane desktopPane = new JDesktopPane();
getContentPane().add(desktopPane, BorderLayout.CENTER);
//创建一个标签组件,用于放置背景图片
final JLabel backgroundLabel = new JLabel();
//需要自己导入一张背景图片到src目录下
URL resource = this.getClass().getResource("/back.jpg");
ImageIcon icon = new ImageIcon(resource);
//压缩背景图片,使其适应窗口大小
icon.setImage(icon.getImage().getScaledInstance(this.getWidth(), this.getHeight(), Image.SCALE_DEFAULT));
backgroundLabel.setIcon(icon);
backgroundLabel.setBounds(0, 0, this.getWidth(), this.getHeight());
desktopPane.add(backgroundLabel, new Integer(Integer.MIN_VALUE));
//当改变窗口大小时,自动调整背景图片大小
getContentPane().addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent e) {
int width = e.getComponent().getWidth();
int heigth = e.getComponent().getHeight();
icon.setImage(icon.getImage().getScaledInstance(width,heigth, Image.SCALE_DEFAULT));
backgroundLabel.setBounds(0, 0,width,heigth);
}
});
}
}
阅读全文
0 0
- java的JDesktopPane背景图片自适应窗口大小示例
- pyqt窗口背景图片自适应大小
- JavaScript让背景图片自适应窗口大小代码
- JDesktopPane改变窗体大小时背景图片自动适应窗体大小
- html/js 实现背景图片自适应窗口分辨率大小
- 背景图片自适应分辨率大小
- 背景图片自适应浏览器大小
- 背景图片自适应大小(css3)
- widget背景图片自适应大小
- 背景图片自适应大小(css3)
- JDesktopPane加背景图片
- 设置JDesktopPane背景图片
- java swing 窗口和控件自适应大小
- css实现背景图片自适应大小
- css 背景图片自适应元素大小
- 背景图片按比例拉伸自适应大小
- winfrom-背景图片填充自适应大小
- picturebox的背景图片怎么能根据分辨率大小自适应。?
- 输出菱形图案(简单)
- B/S和C/S架构系统的性能测试有感
- 《深入理解Java虚拟机》虚拟机类加载机制
- 欢迎使用CSDN-markdown编辑器
- git diff
- java的JDesktopPane背景图片自适应窗口大小示例
- Android高级画笔效果实现的探索
- iOS 11.0 iPhone X safeArea适配
- SAI绘画软件新手初学视频教程
- 社会矩阵:云技术如何激活十亿虚拟现实用户【52VR翻译】(附Carmack于OC4的演讲视频)
- 第2章 Git命令的基本操作
- Android 刮刮乐,自定义View
- 1.1数组和链表:19. Remove Nth Node From End of List(Leetcode)
- 一个java高级工程师的进阶之路【转】