2014-12-09 6 views
3

사용자가 키를 누를 때 특정 기능을 실행하고 싶습니다. 이것은 콘솔에서 실행되며 코드는 Java로 표시됩니다. 어떻게해야합니까? 키 프레스/키드 다운에 대한 거의 지식이 없으므로 설명을 실제로 사용할 수 있습니다.콘솔에서 키 누름 감지

+2

다음 텍스트를 입력, 아래쪽 투표에 대한 이유가 될 것이다 좋은. 하나는 건설적인 비평으로 개선 될 수 있으며 건설적인 것은 여기서 핵심 단어입니다. – LightMikeE

답변

3

,이 시작할 수 있습니다 :

import java.util.Scanner; 

public class ScannerTest { 

    public static void main(String[] args) { 
     Scanner keyboard = new Scanner(System.in); 
     boolean exit = false; 
     while (!exit) { 
      System.out.println("Enter command (quit to exit):"); 
      String input = keyboard.nextLine(); 
      if(input != null) { 
       System.out.println("Your input is : " + input); 
       if ("quit".equals(input)) { 
        System.out.println("Exit programm"); 
        exit = true; 
       } else if ("x".equals(input)) { 
        //Do something 
       } 
      } 
     } 
     keyboard.close(); 
    } 
} 

을 간단히 ScannerTest을 실행하고 그래서

+0

이 라이브러리를 가져와야합니까? – LightMikeE

+0

java.util.Scanner. 내 대답을 편집했습니다 – Joachim

+0

오케이. 내가 확인하고 볼게 – LightMikeE

3

명령 줄 환경에서 이벤트를 감지 할 수 없습니다. GUI를 제공해야하며 KeyListener 클래스를 사용하여 키보드 이벤트를 감지 할 수 있습니다.

또는 표준 입력에서 명령을 읽고 적절한 기능을 실행할 수 있습니다. 콘솔과 재생하려면

+2

요구 사항은 명령 줄에서 수행해야하며 C++로 수행 할 수 있다고 들었습니다. 그렇다면 왜 Java가 아닌가? – LightMikeE

+0

아마도 C++에서는 OS 기능에 액세스 할 수 있고 Java에서는 키를 누르는 데 Java UI가 필요하기 때문일 수 있습니까? 다음은 관련된 스레드입니다. https://stackoverflow.com/a/4609067/4802862 –