为了账号安全,请及时绑定邮箱和手机立即绑定

如何浏览图像在java中设置Jlabel

如何浏览图像在java中设置Jlabel

开心每一天1111 2023-01-05 16:59:03

我试图浏览图像并设置为 Jlabel 但是。我得到 BufferedImage thumbanail = Thumbnails.of(image).size(250,200).asBufferedImage(); 的错误 这行代码错误指示大小。jLabel 7 我已经更改了变量名称 imagelabel 此处图像需要在浏览器图像后显示

http://img1.sycdn.imooc.com/63b6916b0001419206580396.jpg

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         

        // TODO add your handling code here:

        JFileChooser ch = new JFileChooser();

        ch.showOpenDialog(null);

        File f = ch.getSelectedFile();

        String filename = f.getAbsolutePath();

        jTextField5.setText(filename);     


        try {

                File image = new File(filename);                  

                BufferedImage thumbanail = Thumbnails.of(image).size(250,200).asBufferedImage();

                ByteArrayOutputStream os = new ByteArrayOutputStream();

                ImageIO.write(thumbanail, "jpeg",os);

                InputStream is = new ByteArrayInputStream(os.toByteArray());

                ByteArrayOutputStream bos = new ByteArrayOutputStream();

                byte[] buf = new byte[1024];

                for(int readnum;(readnum = is.read(buf))!=-1;)

                {

                        bos.write(buf,0,readnum);

                }

                    ImageIcon viewimage = new ImageIcon(thumbanail);

                    imagelabel.setIcon(viewimage);           


        } catch (IOException ex) {

            Logger.getLogger(emploee.class.getName()).log(Level.SEVERE, null, ex);

        }


查看完整描述

1 回答

?
临摹微笑

TA贡献1739条经验 获得超2个赞

首先,您可以选择图片并调整其大小以填充 JLabel 并将其添加为 ImageIcon。如果你不缩放图像将被裁剪。


  JFileChooser fc = new JFileChooser();

    if(fc.showOpenDialog(frame) == JFileChooser.APPROVE_OPTION){

        BufferedImage img = ImageIO.read(fc.getSelectedFile());

        ImageIcon imageIcon = new ImageIcon(new 

        ImageIcon(img).getImage().getScaledInstance(20, 20, Image.SCALE_DEFAULT));

        yourLabel.setIcon(imageIcon);

      }

这里20,20是你需要设置的图片的宽高。


查看完整回答
反对 回复 2023-01-05

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信