返回列表 發帖
  1. import java.awt.event.KeyEvent;
  2. import java.awt.event.KeyListener;
  3. import javax.swing.ImageIcon;
  4. import javax.swing.JFrame;
  5. import javax.swing.JLabel;


  6. public class Ch90 implements KeyListener
  7. {
  8.         JFrame fm;
  9.         JLabel lb;
  10.         ImageIcon ii,ic;
  11.         int x=200;
  12.         int y=200;
  13.         Ch90()
  14.         {
  15.                 ic=new ImageIcon(Ch90.class.getResource("pic/icon.png"));
  16.                 ii=new ImageIcon(Ch90.class.getResource("pic/baby.png"));
  17.                
  18.                
  19.                 lb=new JLabel(ii);
  20.                 lb.setBounds(x,y, 128,128);
  21.                
  22.                 fm=new JFrame();
  23.                 fm.add(lb);
  24.                 fm.addKeyListener(this);
  25.                 fm.setTitle("鍵盤事件");
  26.                 fm.setBounds(100, 100, 500, 350);
  27.                 fm.setResizable(false);
  28.                 fm.setVisible(true);
  29.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  30.                 fm.setLayout(null);
  31.                 fm.setIconImage(ic.getImage());
  32.                
  33.         }
  34.         public static void main(String[] args)
  35.         {
  36.                 new Ch90();

  37.         }
  38.         @Override
  39.         public void keyPressed(KeyEvent e) {
  40.                 if(!e.isShiftDown())
  41.                 {
  42.                         if(e.getKeyCode()==KeyEvent.VK_UP)
  43.                                 y-=5;
  44.                         if(e.getKeyCode()==KeyEvent.VK_DOWN)
  45.                                 y+=5;
  46.                         if(e.getKeyCode()==KeyEvent.VK_LEFT)
  47.                                 x-=5;
  48.                         if(e.getKeyCode()==KeyEvent.VK_RIGHT)
  49.                                 x+=5;
  50.                                
  51.                 }else
  52.                 {
  53.                         if(e.getKeyCode()==KeyEvent.VK_UP)
  54.                                 y+=5;
  55.                         if(e.getKeyCode()==KeyEvent.VK_DOWN)
  56.                                 y-=5;
  57.                         if(e.getKeyCode()==KeyEvent.VK_LEFT)
  58.                                 x+=5;
  59.                         if(e.getKeyCode()==KeyEvent.VK_RIGHT)
  60.                                 x-=5;
  61.                 }
  62.                 lb.setLocation(x, y);
  63.         }
  64.         @Override
  65.         public void keyReleased(KeyEvent e) {}
  66.         @Override
  67.         public void keyTyped(KeyEvent e) {}
  68. }
複製代碼

TOP

  1. import java.awt.event.KeyEvent;
  2. import java.awt.event.KeyListener;
  3. import javax.swing.ImageIcon;
  4. import javax.swing.JFrame;
  5. import javax.swing.JLabel;


  6. public class Ch91 implements KeyListener{

  7.         JFrame fm;
  8.         JLabel lb;
  9.         int x=100,y=100;
  10.         ImageIcon ic,pic1,pic2,pic3,pic4;
  11.         Ch91()
  12.         {
  13.                 ic=new ImageIcon(Ch91.class.getResource("pic/android.png"));
  14.                 pic1=new ImageIcon(Ch91.class.getResource("pic/1.png"));
  15.                 pic2=new ImageIcon(Ch91.class.getResource("pic/2.png"));
  16.                 pic3=new ImageIcon(Ch91.class.getResource("pic/3.png"));
  17.                 pic4=new ImageIcon(Ch91.class.getResource("pic/4.png"));

  18.                 lb=new JLabel(pic2);
  19.                 lb.setBounds(x, y, 128, 128);

  20.                 fm=new JFrame("螃蟹走路");
  21.                 fm.setVisible(true);
  22.                 fm.setResizable(false);
  23.                 fm.setLayout(null);
  24.                 fm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  25.                 fm.setBounds(100,100, 500, 500);
  26.                 fm.setIconImage(ic.getImage());
  27.                 fm.add(lb);
  28.                 fm.addKeyListener(this);

  29.         }
  30.         public static void main(String[] args)
  31.         {
  32.                 new Ch91();
  33.         }
  34.         @Override
  35.         public void keyPressed(KeyEvent e)
  36.         {
  37.                 if(e.getKeyCode()==KeyEvent.VK_UP)
  38.                 {
  39.                         y-=5;
  40.                         lb.setIcon(pic1);
  41.                         lb.setLocation(x, y);
  42.                 }
  43.                 if(e.getKeyCode()==KeyEvent.VK_DOWN)
  44.                 {
  45.                         y+=5;
  46.                         lb.setIcon(pic4);
  47.                         lb.setLocation(x, y);
  48.                 }
  49.                 if(e.getKeyCode()==KeyEvent.VK_LEFT)
  50.                 {
  51.                         x-=5;
  52.                         lb.setIcon(pic3);
  53.                         lb.setLocation(x, y);
  54.                 }
  55.                 if(e.getKeyCode()==KeyEvent.VK_RIGHT)
  56.                 {
  57.                         x+=5;
  58.                         lb.setIcon(pic2);
  59.                         lb.setLocation(x, y);
  60.                 }

  61.         }
  62.         @Override
  63.         public void keyReleased(KeyEvent e) {}
  64.         @Override
  65.         public void keyTyped(KeyEvent e) {}

  66. }
複製代碼

TOP

返回列表