JtextPanel を使用してキーボードから入力を取得し、Enter キーを押したときにそれを文字列に保存し、その文字列を使用して、入力で指定された行に基づいてアクションを実行する必要があります (例: "help" または "quit")。JTextPanel の KeyListener でこれを取得しました。
...
public void keyPressed(KeyEvent e) {
int key = e.getKeyCode();
if (key == KeyEvent.VK_ENTER) {
inputString = textField.getText();
textArea.append(inputString + "\n");
textField.setText("");
}
}
....
、しかし、このメソッドを直接呼び出すことはできません。私は次のようなものが必要です
String input = processInput();
if((input).equals("help"))
............
else if ((input).equals("go"))
............
processInput は、(key== KeyEvent.VK_ENTER) を待機するメソッドである必要があります。これは、C で scanf を使用する場合や Java で bufferedReader を使用する場合のように、Enter キーを押すまでキーボードから文字列が渡されるのを待ちます。編集
私のアプリはそのようなコマンドを管理します
while(!finished) {
finished = processInput()
}
processInput は、input で指定されたコマンドを管理します。そのため、keyListener から processInput() を呼び出すことができません。私の英語はとても下手です。
ありがとう