使用Java显示图片

之前学习C和C++时总是和数据打交道,也许是学的浅薄的关系,当时觉得显示界面和图像是如此的神秘。

如今学习了一段时间的java,发现其实界面什么的也不是那么的难懂。

下面写一个简单的例子,让我们的java为我们展示张图片来看看吧。

 

面板源码:

package simple;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Panel;
import java.awt.image.BufferedImage;

import javax.swing.ImageIcon;



public class MyPanel extends Panel{
	
	private final Image screenImage = new BufferedImage(800, 600, 2);
	
	private final Graphics2D screenGraphic = (Graphics2D) screenImage
	.getGraphics();
	
	private Image backgroundImage;
	
	public MyPanel() {
		loadImage();
		// 设定焦点在本窗体
		setFocusable(true);
		// 设定初始构造时面板大小,这里先采用图片的大小
		setPreferredSize(new Dimension(800,600));
		// 绘制背景
		drawView();
	}
	
	/**
     * 载入图像
     */
    private void loadImage() {
    	//获得当前类对应的相对位置image文件夹下的背景图像
        ImageIcon icon = new ImageIcon(getClass().getResource("../image/background.jpg"));
        //将图像实例赋给backgroundImage
        backgroundImage = icon.getImage();
    }
	
	private void drawView() {
		screenGraphic.drawImage(backgroundImage, 0, 0, null);
	}
    
	public void paint(Graphics g) {
		g.drawImage(screenImage, 0, 0, null);
	}
    
}


窗体源码:

package simple;

import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class MyFrame extends Frame{
	
	public MyFrame() {

		// 默认的窗体名称
		this.setTitle("显示一张图片");

		// 获得面板的实例
		MyPanel panel = new MyPanel();
		this.add(panel);
		this.addWindowListener(new WindowAdapter() {
			//设置关闭
			public void windowClosing(WindowEvent e) {
				System.exit(0);
			}
		});
		// 执行并构建窗体设定
		this.pack();
		this.setVisible(true);
	}

}


主方法源码:

package simple;

import java.awt.Frame;


public class Main  {
	
	public static void main(String[] args) {
		Frame frame=new MyFrame();
	}
	
}


结构:

 

运行效果图:

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值