Java Swing中两种设置背景图(容器图片)

来源:互联网 发布:js pdf在线阅读 编辑:程序博客网 时间:2024/05/18 00:13

在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();}}



原创粉丝点击