Endlosschleife mit einem Tastendruck abbrechen!

nafri

Grünschnabel
Hallo Leute !
Ich wollte euch fragen wie ich eine Enldosschleife mit einem beliebigem/oder bestimmten Tastendruck (z.B Esc) abbrechen kann?
In Google habe ich gesucht und da kammen nur beispiele für C++.
Danke im Voraus . :)
 
Huhu!

Hier ein Beispiel mit einem JFrame:

Java:
package de.tutorials;

import java.awt.Dimension;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;

public class BreakLoopTest extends JFrame implements KeyListener {

    private boolean escKeyPressed = false;

    public BreakLoopTest() {
        this.addKeyListener(this);
        this.setPreferredSize(new Dimension(100,100));
        this.setVisible(true);
    }

    public void keyPressed(KeyEvent arg0) {
        // TODO Auto-generated method stub
        if (arg0.getKeyCode() == KeyEvent.VK_ESCAPE)
            this.escKeyPressed = true;
    }

    public void keyReleased(KeyEvent arg0) {
        // TODO Auto-generated method stub

    }

    public void keyTyped(KeyEvent arg0) {
        // TODO Auto-generated method stub

    }

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        BreakLoopTest test = new BreakLoopTest();
        test.doSomething();
        
    }

    public void doSomething() {
        while (true) {

            if (escKeyPressed)
                break;

            System.out.println("something done..");

            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
        
        System.exit(0);
    }

}
 
Zurück