我有一个TextArea,我在其中键入内容,它将显示在第二个TextArea上。但每当我按下TextArea中的Enter键来触发EventHandler时,光标就会转到第二行。如果我再次按回车键, 光标停留在第二行。如果按Enter键,如何确保光标停留在第一行?
public class NewClass2 {
public NewClass2(Stage stage) {
initGUI(stage);
}
private void initGUI(Stage stage) {
FlowPane flowPane = new FlowPane();
TextArea textArea = new TextArea();
textArea.setEditable(false);
TextArea text = new TextArea();
textArea.setWrapText(true);
text.setWrapText(true);
text.setPrefColumnCount(1);
text.setPrefRowCount(1);
text.setOnKeyPressed(new EventHandler<KeyEvent>() {
boolean once = false;
@Override
public void handle(KeyEvent keyEvent) {
if (keyEvent.getCode() == KeyCode.ENTER) {
String message = text.getText();
text.setText("");
textArea.appendText(": " + message + System.getProperty("line.separator"));
//text.setText("");
//text.clear();
}
}
});
flowPane.getChildren().add(textArea);
flowPane.getChildren().add(text);
Scene scene = new Scene(flowPane);
stage.setScene(scene);
stage.show();
}
}