Javaユーザーがコマンドプロンプトに入力を入力するまでプログラムの実行を停止します

StripeBob

私は厳密にコマンドプロンプトプログラムを作成していますが、ある時点で、ユーザーがキーボードのキーを押すまで(どちらか)実行を一時停止したいと思います。

これまで私はこれを試しました:

char cont =sc.next().charAt(0);
while(cont !=' ') {
  try{
    Thread.currentThread().sleep(1);
  } catch(Exception e) {
    System.out.println(e);
  }
  cont = sc.next().charAt(0);
}

この場合、「スペース」で実行を再開したかったのですが、入力にトリックを実行させたいと思います。

編集:より具体的には、ユーザーが入力として与えたものをユーザーに見せることなく、押されたキーですぐにプログラムを再開したいと思います。

アレックス・クアドロン

まず第一にThread.currentThread().sleep(1);、スレッドのフローを一時停止するために行う必要はありませんこれは、ユーザーが入力を導入するまでプログラムが待機しているときに自動的に一時停止するためです。

char変数を使用する代わりに、String変数を使用して(スキャナークラスで使用する方が簡単です)、

try{
Thread.currentThread().sleep(1);
} catch(Exception e) {
System.out.println(e);
}

必要ないので。これが私のために働いたコードです:

public static void main(String[] args) {
    Scanner input = new Scanner(System.in);
    String cont = input.nextLine();
    while(!cont.equals(" ")) {

        cont = input.nextLine();

    }

}

他の解決策(はるかに複雑ですが)は、フレームを作成してそれにKeyListenerを追加することです(そうすれば、スペースバーが押されたときにユーザーには何も表示されず、プログラムは即座に実行されます)。

class frame extends JFrame{

    frame(){

        addKeyListener(new KeyListener() {
            @Override
            public void keyTyped(KeyEvent e) {

            }

            @Override
            public void keyPressed(KeyEvent e) {

                if(e.getExtendedKeyCode() == KeyEvent.VK_SPACE){

                    //insert here the code you'd like to be executed when the user introduces a spacebar

                }

            }

            @Override
            public void keyReleased(KeyEvent e) {

            }
        });
      setVisible(true);
    }

}

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ユーザーがJTextFieldに何かを入力するまで、プログラムを「一時停止」します

分類Dev

ユーザー入力が終了するまでプログラムを実行し続けます

分類Dev

ユーザー入力を使用してコマンドラインでJavaプロジェクトを実行する

分類Dev

ユーザーがnを入力してプログラムを終了するまで、プログラムを実行し続けたいですか?

分類Dev

ユーザーが単語を入力するまで実行を続けるプログラム

分類Dev

プログラムがユーザーにプロンプトを表示する前にユーザー入力を受け取るのはなぜですか?

分類Dev

0がキー入力されるまで、ユーザー入力のプロンプトを続けます

分類Dev

ユーザーがテキストフィールドへの入力を一時停止してからコールバックを実行するまで待機するJSプラグインまたはjQuery関数を探しています

分類Dev

プロンプトYES入力でコマンドを実行します

分類Dev

Java Eclipseコンソールは、ユーザー入力の値と文字列値を比較する前にプログラムを終了します

分類Dev

ACプログラムを使用して、ユーザーがLinuxに存在するコマンドを入力したかどうかを判断する方法

分類Dev

この質問をループして、ユーザーがコマンドプロンプトに回答を入力しない場合は、ループを停止してWebブラウザーを開くにはどうすればよいですか?

分類Dev

sbtでscalaプログラムを実行するときにユーザー入力を求めるプロンプト

分類Dev

EditTextでのユーザー入力を無効にしますが、プログラムによる入力は許可します

分類Dev

ユーザー入力をエンコードおよびデコードするJavaプログラム

分類Dev

geditにあるCプログラムをコンパイルして実行するためのコマンドをどこに入力しますか?

分類Dev

Java。プログラムは、ユーザーが配列に入力した7つの数字の出現をカウントします

分類Dev

Qt-ユーザー入力を待つためにプログラムの実行を一時停止する正しい方法は何ですか?

分類Dev

端末がプログラムからの入力をコマンドとして自動的に入力する

分類Dev

1からxまでの数値を出力するプログラムをJavaで作成していました(xはユーザー入力値です)。これはforループとメソッドステートメントを使用しています

分類Dev

値が設定される前に、ユーザーコントロールのドロップダウンにデータを入力します

分類Dev

プログラムを実行するためにユーザーにパスワードの入力を要求する最もクリーンな方法は?

分類Dev

ユーザーが入力を続けるまでプログラムを実行するにはどうすればよいですか?

分類Dev

Perlでユーザー入力を使用してローカルプログラムを実行する方法

分類Dev

ユーザーが正しいユーザー名とパスワードを入力するまでプログラムをループさせる方法

分類Dev

ユーザーが入力した数値の積、ユーザーが0を入力するとプログラムが停止する

分類Dev

このコードを実行しているときに、このcコードが入力を受け入れないのはなぜですか。このプログラムは何も入力せずに存在し始めています

分類Dev

javaは外部プログラムへのユーザー入力をシミュレートします

分類Dev

MVPアプローチを使用して、コントロールが動的であるユーザーフォーム入力を検証します

Related 関連記事

  1. 1

    ユーザーがJTextFieldに何かを入力するまで、プログラムを「一時停止」します

  2. 2

    ユーザー入力が終了するまでプログラムを実行し続けます

  3. 3

    ユーザー入力を使用してコマンドラインでJavaプロジェクトを実行する

  4. 4

    ユーザーがnを入力してプログラムを終了するまで、プログラムを実行し続けたいですか?

  5. 5

    ユーザーが単語を入力するまで実行を続けるプログラム

  6. 6

    プログラムがユーザーにプロンプトを表示する前にユーザー入力を受け取るのはなぜですか?

  7. 7

    0がキー入力されるまで、ユーザー入力のプロンプトを続けます

  8. 8

    ユーザーがテキストフィールドへの入力を一時停止してからコールバックを実行するまで待機するJSプラグインまたはjQuery関数を探しています

  9. 9

    プロンプトYES入力でコマンドを実行します

  10. 10

    Java Eclipseコンソールは、ユーザー入力の値と文字列値を比較する前にプログラムを終了します

  11. 11

    ACプログラムを使用して、ユーザーがLinuxに存在するコマンドを入力したかどうかを判断する方法

  12. 12

    この質問をループして、ユーザーがコマンドプロンプトに回答を入力しない場合は、ループを停止してWebブラウザーを開くにはどうすればよいですか?

  13. 13

    sbtでscalaプログラムを実行するときにユーザー入力を求めるプロンプト

  14. 14

    EditTextでのユーザー入力を無効にしますが、プログラムによる入力は許可します

  15. 15

    ユーザー入力をエンコードおよびデコードするJavaプログラム

  16. 16

    geditにあるCプログラムをコンパイルして実行するためのコマンドをどこに入力しますか?

  17. 17

    Java。プログラムは、ユーザーが配列に入力した7つの数字の出現をカウントします

  18. 18

    Qt-ユーザー入力を待つためにプログラムの実行を一時停止する正しい方法は何ですか?

  19. 19

    端末がプログラムからの入力をコマンドとして自動的に入力する

  20. 20

    1からxまでの数値を出力するプログラムをJavaで作成していました(xはユーザー入力値です)。これはforループとメソッドステートメントを使用しています

  21. 21

    値が設定される前に、ユーザーコントロールのドロップダウンにデータを入力します

  22. 22

    プログラムを実行するためにユーザーにパスワードの入力を要求する最もクリーンな方法は?

  23. 23

    ユーザーが入力を続けるまでプログラムを実行するにはどうすればよいですか?

  24. 24

    Perlでユーザー入力を使用してローカルプログラムを実行する方法

  25. 25

    ユーザーが正しいユーザー名とパスワードを入力するまでプログラムをループさせる方法

  26. 26

    ユーザーが入力した数値の積、ユーザーが0を入力するとプログラムが停止する

  27. 27

    このコードを実行しているときに、このcコードが入力を受け入れないのはなぜですか。このプログラムは何も入力せずに存在し始めています

  28. 28

    javaは外部プログラムへのユーザー入力をシミュレートします

  29. 29

    MVPアプローチを使用して、コントロールが動的であるユーザーフォーム入力を検証します

ホットタグ

アーカイブ