急!!!用什么swing组件加入图片 
我是新手,搞了好久都加载不来图片。。高手棒棒忙。

解决方案 »

  1.   

    如果是为button和label添加图片
    JLabel pitLabel=new JLabel();
    ImageIcon img=new ImageIcon("f:/pit.jpg");//创建图片对象
    pitLabel.setIcon(img);
    panel.add(pitLabel); Button b=new JButton(new ImageIcon("images/startButtonImage.jpg"));
    如果要显示图片也可以用label添加图片然后把label放到容器里就行了,不知道对你的问题理解的对不对
      

  2.   

    重写panel的protected void paintComponent(Graphics g) 方法,用g.drawImage()方法就能加载图片
      

  3.   

       上面得方法可行。注意图片的格式jpg
      

  4.   

    我和四楼的观点类似
    获得图片用ImageIO类的类方法read(File fileObj),这个方法的执行结果得到一个BufferedImage对象,然后想画到哪里就在那个容器中获得它的Graphics对象,然后调用Graphics的drawImage方法就可以啦
      

  5.   

    我想是这个吧
    Toolkit.getDefaultToolkit().createImage(String filename)
      

  6.   

    Jlabel和Jbutton都可以用,
    ImageIcon img=new ImageIcon("f:/pit.jpg");//创建图片对象
    Jbutton jb = new Jbutton(img);
    jp.add(jb);
    jp.pack();//自动调整
      

  7.   

    例子如下:
    jpImage = new JPanel(){
    public void paint(Graphics g){
    gOffScreen.drawImage(bgImage,0,0,this);//bgImage是一个背景图片,因为它随时会变化,所以用此句将其放在一个Graphics对象gOffScreen的缓冲区里
    g.drawImage(offScreen,0,0,this); //将缓冲区的图片绘制到JPanel上.
    }
    };//创建一个用于显示图片的JPanel对象并覆盖其paint方法.
      

  8.   

    import java.applet.*; 
    import java.awt.*; public class myapplet extends Applet {    
    public void paint(Graphics g) { 
                   
        Image image;        
    image=getToolkit().getImage("D:\\test.jpg");
    g.drawImage(image, 0, 0,this);
    }
            
            
    }
    在Applet上显示一组图片 每1秒换下一个图片import java.awt.*;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    import java.io.File;
    public class DrawImageAnimator extends Frame {
         private Image[] images;
         private int curImage;
         private boolean bStop;
         private MyThread thread;
         
    public DrawImageAnimator(String s) {
    super(s);
    final String dir="D:\\面瘫";
    String[] files=new File(dir).list();
    int num=files.length;
    images=new Image[num];
    for (int i = 0; i < num; i++) {
    images[i]=Toolkit.getDefaultToolkit().createImage(dir+"\\"+files[i]);
    }
    setSize(400,700);
    setVisible(true);
    addWindowListener(new WindowAdapter(){
    public void windowClosing(WindowEvent e){
    bStop=true;
    System.exit(0);
    }
    });
    thread=new MyThread();
    thread.start();
    }
    public void paint(Graphics g) {

      g.drawImage(images[curImage], 0, 0, this);
    }
    class MyThread extends Thread{
    public void run() {
        while (!bStop) {
    repaint();
    try {
    sleep(1000);
    } catch (InterruptedException e) {
    e.printStackTrace();
    }
    curImage++;
    if (curImage==images.length) {
    curImage=0;
    }
    }
    }
    }
      public static void main(String[] args) {
    Object f=new DrawImageAnimator("浏览图片");
    }
    }