1 6 7 package com.memoire.vainstall.gui; 8 9 import com.memoire.vainstall.VAGlobals; 10 import java.awt.*; 11 import java.io.*; 12 import javax.swing.*; 13 import javax.swing.border.*; 14 15 19 20 public class VAImagePanel 21 extends JLabel 22 { 23 public static final VAImagePanel IMAGE_PANEL=new VAImagePanel(); 24 25 public VAImagePanel() 26 { 27 super(); 28 29 Dimension d=new Dimension(200, 400); 30 setBackground(Color.white); 31 setBorder(new BevelBorder(BevelBorder.LOWERED)); 32 InputStream imgStream=VAGlobals.BASE_CLASS.getResourceAsStream("/"+VAGlobals.IMAGE); 33 if( imgStream==null ) { 34 setPreferredSize(d); 35 } else { 36 ByteArrayOutputStream dataStream=new ByteArrayOutputStream(); 37 try { 38 byte[] buf=new byte[1024]; 39 int read=imgStream.read(buf, 0, buf.length); 40 while( read>0 ) { 41 dataStream.write(buf, 0, read); 42 read=imgStream.read(buf, 0, buf.length); 43 } 44 imgStream.close(); 45 ImageIcon image=new ImageIcon(dataStream.toByteArray()); 46 dataStream.close(); 47 Insets i=getInsets(); 48 image.setImage(image.getImage().getScaledInstance( 49 d.width-i.left-i.right, d.height-i.top-i.bottom, Image.SCALE_SMOOTH)); 50 setIcon(image); 51 setPreferredSize(d); 52 setMaximumSize(d); 53 } catch( IOException ex ) { 54 setPreferredSize(d); 55 } 56 } 57 } 58 } 59 | Popular Tags |