本帖最后由 施大勇 于 2013-9-28 15:32 编辑
- package day3;
- import java.awt.Container;
- import java.io.File;
- import java.io.FileInputStream;
- import java.io.FileNotFoundException;
- import javax.swing.ImageIcon;
- import javax.swing.JFrame;
- import javax.swing.JLabel;
- public class MyImageIcon extends JFrame {
- /**
- * 图片文件转化为ImageIcon对象的三种方法。
- * */
- public static void main(String[] args) {
- new MyImageIcon();
- }
- public MyImageIcon(){
- super();
- setBounds(100,100,500,400);
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- Container container=getContentPane();
- //第一种:直接使用文件路径字符串作为参数。
- String picPath="D:\\MyEclipse85\\swing\\bin\\day3\\icon.jpg";
- ImageIcon icon=new ImageIcon(picPath);
- //使用字节流作为参数。可以通过网络从外部度算机上获取图片文件。
- /*File file=new File("D:\\MyEclipse85\\swing\\src\\day3\\icon.jpg");
- FileInputStream fis=null;
- byte[]data=new byte[(int)file.length()];
- try {
- fis=new FileInputStream(file);
- fis.read(data);
- fis.close();
- } catch (Exception e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
-
- ImageIcon icon=new ImageIcon(data);*/
- //使用反射中getResource()直抒接得到文件的URL,再用URL作为参数。图片文件一定要和*.class文件放在一块。
- /*URL url=MyImageIcon.class.getResource("icon.jpg");
- ImageIcon icon=new ImageIcon(url);//图片文件要放在*.class同一个目录下。
- */
- JLabel label=new JLabel(icon);
- container.add(label);
-
- setVisible(true);
-
- }
- }
复制代码 |