要求:设计一个用JApplet小应用程序编写的图形用户界面,在界面的窗口中显示一张图片,一个按钮,当按下该按钮后,显示另外一张图片。
请部按下按钮显示一张图片?未完成代码如下:
    import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
public class Shiyan14A extends JApplet {
        Image soldier,soldier2;
       
        JButton b1,b2;
     public void init(){
       soldier =getImage(getCodeBase(),"1.jpg");
       
       b1=new JButton("下一张");b1.setSize(5,5);
       b2=new JButton("上一张");b2.setSize(5,5);
       setLayout(new FlowLayout(FlowLayout.CENTER));
       add(b1);add(b2);
       b1.setVerticalTextPosition(JButton.BOTTOM);
       b2.setVerticalTextPosition(JButton.TOP);
     }
     public void paint(Graphics g){
      
      g.drawImage(soldier,0,0,640,480,this);
      b1.addActionListener(new ActionListener(){
      public void actionPerformed (ActionEvent e){
      //getContentPane().add(soldier);
    
      }
      public void panitt(Graphics g){
    
      g.drawImage(soldier2,0,0,640,480,null);
      }
      });
      
     }
}

解决方案 »

  1.   

    参考:ActionEvent 和 Image
      

  2.   

      好像很多组件都有setIcon方法?
      

  3.   

    可以显示了,但是点击按钮的时候会出一张跟原来一们的图片,不全并且按钮也消失了.请高人指点代码如下:
    import java.awt.*;
    import javax.swing.*;
    import java.awt.event.*;
    import javax.swing.event.*;
    public class Shiyan14A extends JApplet {
            Image soldier,soldier2;
            JLabel l;
            JButton b1;//,b2;
         public void init(){
           soldier =getImage(getCodeBase(),".\\1.jpg");
           soldier2 =getImage(getCodeBase(),".\\wa2.jpg");
           Icon i=new ImageIcon(".\\1.jpg");
           l=new JLabel(i);add(l);
           b1=new JButton("下一张");b1.setSize(5,5);
          // b2=new JButton("上一张");b2.setSize(5,5);
           setLayout(new FlowLayout());
           add(b1);//add(b2);
          // b1.setVerticalAlignment(JButton.BOTTOM);
           //b2.setVerticalAlignment(JButton.TOP);
           b1.setVisible(true);//b2.setVisible(true);
           b1.addActionListener(new ActionListener(){
            public  void actionPerformed(ActionEvent e){
            boolean flag=true;
                b1.setVerticalAlignment(JButton.BOTTOM);
                  //b2.setVerticalAlignment(JButton.TOP);
             if(flag){
             Icon a=new ImageIcon(".\\1.jpg");
             b1.setIcon(a);
             flag=false;
             //b2.setEnabled(true);
                 }
             else{
             Icon c=new ImageIcon(".\\wa2.jpg");
             b1.setIcon(c);
             flag=true;
             }
               }
            
           });
           /*b2.addActionListener(new ActionListener(){
            public  void actionPerformed(ActionEvent e){
                //b1.setVerticalAlignment(JButton.BOTTOM);
                  //b2.setVerticalAlignment(JButton.TOP);
             if(!flag){
             Icon a=(Icon)soldier2;
             b2.setIcon(a);
             flag=true;
             repaint();
             }
             }
           });*/
         } 
         
     
       
         
    }