java - GUI - 在 JTextPane 上逐行显示并制作相关的 JProgressBar

标签 java swing user-interface progress-bar jtextpane

如何在 JTextPane 上逐行显示并制作一个相关的JProgressBar

我有这个循环:

  int k;
  for (k=0; k<array_TXT.length; k++) {
    if (array_TXT[k] != null) { 
      textPane.append( array_TXT[k] );
    }
 }

我想附加每一行 array_TXT[k] (字符串)在 JTextPane 上几秒钟后一个接一个,它必须同步到 JProgressBar .

每次都是这样k具有不同的值,它将打印在文本 Pane 上,并且进度条将始终与这些打印相关。

我已经阅读了关于 Thread.sleep(x); 的内容但我不知道把它放在哪里才能达到我的目标。

最佳答案

不要阻塞 EDT(事件调度线程)——当发生这种情况时,GUI 将“卡住”。不是调用 Thread.sleep(n) 而是实现一个 Swing Timer 用于重复任务或一个 SwingWorker 用于长时间运行的任务。参见 Concurrency in Swing了解更多详情。

关于java - GUI - 在 JTextPane 上逐行显示并制作相关的 JProgressBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16633414/

相关文章:

java - Java 线程和 OS 线程之间的通信

java - 为什么我的 JPanel 背景颜色不会改变?

java - 使用 servlet 上传文件返回 NULL 值作为异常

java - 如何将 JFrame 放入全屏并自动重新缩放内容

java - 在 Applet 上绘制 JFrame 玻璃面板

user-interface - 增强试用用户首次体验的方法

java - 从 Java 的 System.in 读取输入的替代方法

java - 如何将卡片布局格式添加到我的主游戏屏幕,以便当我单击按钮时它从主菜单屏幕更改为我提供的游戏屏幕代码

html - 杂散结束标记 img

c++ - Qt 中 "string s = textBox1.text"对应的代码是什么?