4

現在、私はコンソール駆動型の Java プロジェクトに取り組んでいます。ユーザーがプログラムのコマンドラインで上矢印を押すと、コマンドラインにユーザーが最後に実行したコマンドが表示されるという機能を実現したいと考えています。

以下のようにキーボードイベントについて何かを見つけました。

public void keyPressed(KeyEvent evt);
public void keyReleased(KeyEvent evt);
public void keyTyped(KeyEvent evt);

ただし、コマンド文字列をコマンドラインに表示する方法がわかりません。たとえば、ユーザーが「up」を押すと、コマンドは最後のコマンドをコマンド ラインの事前入力として戻す必要があります。

4

2 に答える 2

1

アプリが特別な API を使用しない限り、そのコンソール入力はコンソール ドライバー (仮想コンソールの場合、仮想コンソールを提供するアプリケーション) に左右されます。幸いなことに、Java を readline または editline API に接続するプロジェクトがあり、上矢印を使用して前の行を取得するなどの編集機能を提供します。http://java-readline.sourceforge.net/を参照してください。

于 2011-02-25T19:38:02.640 に答える
0

ユーザーがコマンドを実行するたびに、それを使用して一時変数に保存し
public void keyPressed(KeyEvent evt);
、ユーザーが上キーを押すと、その変数の値を画面に表示します

コード例:

public void executeCommand(String command){
    temp = command;
    // your code
}



public void keyPressed(KeyEvent evt){
    //display the value in the temp variable to screen
}
于 2011-02-25T19:30:52.973 に答える