A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

怎么用java读取电脑中的图片然后在JFrame中显示出来?

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

2 个回复

倒序浏览
给段代码给你:
我自己用的。
  1. class ImagePanel extends JPanel {
  2.         private static final long serialVersionUID = 1L;
  3.         JPanel contentPanel;
  4.         BorderLayout bl = new BorderLayout();
  5.         DrawCanvas canvas = new DrawCanvas();

  6.         ImagePanel(){
  7.                 init();
  8.         }
  9.        
  10.         private void init() {
  11.                 contentPanel = this;
  12.                 contentPanel.setLayout(bl);
  13.                 this.setSize(new Dimension(330, 432));
  14.                 contentPanel.add(this.canvas, BorderLayout.CENTER);
  15.         }

  16.          

  17.         class DrawCanvas extends Canvas {
  18.                 private static final long serialVersionUID = 1L;
  19.                 Image image;

  20.                 public DrawCanvas() {
  21.                         image = this.getToolkit().getImage("images//zhenji.jpg");
  22.                         MediaTracker mt = new MediaTracker(this);
  23.                         mt.addImage(image, 1);
  24.                         try {
  25.                                 mt.waitForAll();
  26.                         } catch (InterruptedException e) {
  27.                                 e.printStackTrace();
  28.                         }
  29.                         if (image.getWidth(this) == -1) {
  30.                                 System.out.println("Could not get the image");
  31.                                 System.exit(-1);
  32.                         }
  33.                         this.setBackground(Color.black);
  34.                 }
  35.                 @Override
  36.                  public void paint(Graphics g){
  37.                          Graphics2D g2D = (Graphics2D)g;
  38.                         BufferedImage bimage = (BufferedImage)this.createImage(this.getWidth(),this.getHeight());
  39.                         bimage.createGraphics().drawImage(this.image,0,0,this);
  40.                         g2D.drawImage(bimage,0,0,this);
  41.                  }
  42.         }
  43. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
杨玉揆 + 1

查看全部评分

回复 使用道具 举报
谢谢,学习了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马