import java.applet.*;
import java.awt.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.image.*;public class example7_7 extends Applet implements MouseListener {
 int number=5;
int count=0;
Image card []=new Image[number];
public void init(){
addMouseListener(this);
for(int i=0;i<number;i++)
card[i]=getImage(getCodeBase(),"DSC"+i+".jpg");

}
public void paint(Graphics g){
if((card[count])!=null)
g.drawImage(card[count],10,10,card[count].getWidth(this),card[count].getHeight(this),this);

}
public void mousePressed(MouseEvent e)
{
count=(count+1)%number;
repaint();
}
public void mouseReleased(MouseEvent e)
{}
public void mouseEntered(MouseEvent e)
{}
public void mouseExited(MouseEvent e)
{}
public void mouseClicked(MouseEvent e)
{}

}
程序启动总是空白的 为什么图片不会显示 图片都放在同个目录下了
难道是太大 需要缓冲?

解决方案 »

  1.   

    package 其它;import java.applet.*;
    import java.awt.event.MouseEvent;
    import java.awt.event.MouseListener;import javax.swing.ImageIcon;
    import javax.swing.JLabel;
    public class example7_7 extends Applet implements MouseListener { private static final long serialVersionUID = 1L; /**
     * This is the default constructor
     */
    public example7_7() {
    super();
    } /**
     * This method initializes this
     * 
     * @return void
     */
    int number=5;
        int count=0;
        String card[] = new String[number];  //  @jve:decl-index=0:
    private JLabel jLabel = null;
    public void init(){
         jLabel = new JLabel();
         jLabel.setSize(500,500);
         for(int i=0;i<number;i++)
                card[i]= "/\u5176\u5b83/image/"+i+".jpg";
        
         jLabel.setIcon(new ImageIcon(getClass().getResource(card[count])));
         this.add(jLabel, null);
            jLabel.addMouseListener(this);
            this.setSize(500, 500);   
        }
        /*public void paint(Graphics g){
            if((card[count])!=null)
                g.drawImage(card[count],10,10,card[count].getWidth(this),card[count].getHeight(this),this);
            
        }*/
        public void mousePressed(MouseEvent e)
        {
            count=(count+1)%number;
            jLabel.removeAll();
            jLabel.setIcon(new ImageIcon(getClass().getResource(card[count])));
            jLabel.repaint();
            jLabel.revalidate();
            this.validate();
            
        }
        public void mouseReleased(MouseEvent e)
        {}
        public void mouseEntered(MouseEvent e)
        {}
        public void mouseExited(MouseEvent e)
        {}
        public void mouseClicked(MouseEvent e)
        {}
    /**
     * This method initializes jButton
     * 
     * @return javax.swing.JButton
     */}