q1:eventlistener

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
q1:eventlistener [2017/09/17 17:04] admin03q1:eventlistener [2017/09/18 08:42] (aktuell) admin03
Zeile 115: Zeile 115:
 ===== Die Klasse UFO ===== ===== Die Klasse UFO =====
 <code JAVA> <code JAVA>
-package ufo; 
  
  import java.awt.*;  import java.awt.*;
Zeile 152: Zeile 151:
  
 <code JAVA> <code JAVA>
-package ufo;+
  
 import java.awt.Graphics; import java.awt.Graphics;
Zeile 221: Zeile 220:
 } }
  
 +</code>
 +
 +==== UFO mit Graviation ====
 +Die Klasse UFO kann weiterhin verwendet werden
 +
 +<code JAVA>
 +
 + 
 +import java.awt.Graphics;
 +import java.awt.event.KeyEvent;
 +import java.awt.event.KeyListener;
 +import javax.swing.JPanel;
 + 
 + 
 +public class Zeichenbrett extends JPanel {
 +  static int x = 100;
 +  static int y = 100;
 +  
 +  public Zeichenbrett(){
 +      super();
 +      this.addKeyListener(new TastaturEingabe());
 +      Thread tr = new Thread(new Gravitation());
 +      tr.start();
 +  }
 +  
 +  public void paintComponent(Graphics g) { 
 +      super.paintComponent(g);
 +      zeichneUfo(g, x, y);
 +    
 +  } 
 +  
 +  void zeichneUfo(Graphics g, int xUfo, int yUfo)
 +  {
 +      g.drawRect(xUfo,yUfo,30,15);
 +      g.drawLine(xUfo+15,yUfo-10,xUfo+15,yUfo);
 +      g.drawLine(xUfo+10,yUfo+15,xUfo+5,yUfo+25);
 +      g.drawLine(xUfo+20,yUfo+15,xUfo+25,yUfo+25);
 +  }
 +  
 +  class TastaturEingabe implements KeyListener{
 +    
 +      @Override
 +      public void keyPressed(KeyEvent e) {
 +        if (e.getKeyCode() == KeyEvent.VK_RIGHT)
 +        {
 +            x=x+10; 
 +        }
 +        if (e.getKeyCode() == KeyEvent.VK_LEFT)
 +        {
 +            x=x-10;   
 +        }
 +        if (e.getKeyCode() == KeyEvent.VK_UP)
 +        {
 +            y=y-10;   
 +        }
 +        if (e.getKeyCode() == KeyEvent.VK_DOWN)
 +        {
 +            y=y+10;
 +        }
 +        repaint();    
 +      
 +      }
 +    
 +      @Override
 +      public void keyReleased(KeyEvent e) {
 +        // TODO Auto-generated method stub
 +      }
 +    
 +      @Override
 +      public void keyTyped(KeyEvent e) {
 +        // TODO Auto-generated method stub
 +      }
 +    
 +  }
 +   
 +   class Gravitation implements Runnable{
 +    
 +     @Override
 +     public void run(){
 +            while(y<1000){
 +              y=y+1;
 +              try{
 +                  Thread.sleep(10);
 +                 }
 +              catch(Exception e){
 +                 }
 +               repaint();  
 +              }
 +       }
 +     }
 +
 +}
 </code> </code>
  
  
  
  • /var/www/infowiki/data/attic/q1/eventlistener.1505667866.txt.gz
  • Zuletzt geändert: 2017/09/17 17:04
  • von admin03