Java:在顶部显示文本

标签 java swing jtextarea caret

我有一个简单的显示例程

    public static void showEngineAnalysis(String message) {

    if (message.length() > 0)
        message += "\n";
    Application.obj.engineOutput.append(message);

}

从下面的输入流打印数据

      public void getEngineOutputOriginal(Process engine) 
  {
        try {

                  BufferedReader reader =
                  new BufferedReader(new InputStreamReader(engine.getInputStream()), 1);
                  String lineRead = null;
                  while((lineRead = reader.readLine()) != null) 

                  Application.showEngineAnalysis(lineRead);//send engine analysis to print method

             }
                    catch(Exception e) {
                      e.printStackTrace();
                    }
  }

我希望显示例程在 JTextArea (engineOutput) 的顶部而不是底部打印下一行,即来自:

  1. e7e6 b1c3 2.c5d4 e3d4
  2. e7e6 c4d5 2.e6d5
  3. c5d4 e3d4 2.b8c6

  1. c5d4 e3d4 2.b8c6
  2. e7e6 c4d5 2.e6d5
  3. e7e6 b1c3 2.c5d4 e3d4

我完全不明白(我尝试了插入符号位置等)

最佳答案

您可以插入文本而不是附加文本。

public static void showEngineAnalysis(String message) {
    if (message.length() > 0)
        message += "\n";
    Application.obj.engineOutput.insert(message, 0);
}

关于Java:在顶部显示文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11162423/

相关文章:

java - 为什么JavaFX不支持.wav格式?

Java - IntelliJ - JScrollPane 中的 JList

java - 在 jtextarea 中显示带有换行符和间距的文本

java - 这个例子中有竞争条件吗?如果是这样,如何避免?

Java Swing 从文件选择器加载图像不显示

java - Android - 可运行对象解析为 runOnUiThread() 参数

java - 出于一般目的,哪种方法更好地反转整数?

java - 使用 ScrollPane java 的动态按钮

java - JTextArea 显示最后 X 行

java - 将 JTextArea 内容写入文件