Java 从不同类更新JProgressBar

Java 从不同类更新JProgressBar,java,swing,jprogressbar,Java,Swing,Jprogressbar,我已经构建了一个小型java应用程序,它用于在mysql数据库上更新产品价格、数量和特价等产品,使用csv文件作为输入,我从我父亲的电子零售企业的封闭计算机系统中接收 除了进度条外,我的一切都正常。由于JProgressBar的设置,我一辈子都无法解决如何将其放入我的应用程序中。在我获得软件工程学位的头6个月里,我对编程相对来说是个新手 基本上,我有三门课: 数据库(执行与mysql数据库的所有交互) 更新程序(解释.csv文件并与数据库模块交互以执行功能。它循环通过从.csv文件创建的数组,并

我已经构建了一个小型java应用程序,它用于在mysql数据库上更新产品价格、数量和特价等产品,使用csv文件作为输入,我从我父亲的电子零售企业的封闭计算机系统中接收

除了进度条外,我的一切都正常。由于JProgressBar的设置,我一辈子都无法解决如何将其放入我的应用程序中。在我获得软件工程学位的头6个月里,我对编程相对来说是个新手

基本上,我有三门课: 数据库(执行与mysql数据库的所有交互) 更新程序(解释.csv文件并与数据库模块交互以执行功能。它循环通过从.csv文件创建的数组,并更新记录) GUI(一个基本GUI,由JFrame、JPanel、按钮和文本字段组成,用于数据库登录和浏览.csv文件)

GUI使用数据库的文本字段作为输入创建数据库实例,并将其传递给同样由GUI创建的updater类的实例

我应该在该项目的何处插入进度条,或者我应该对项目的设置进行哪些更改以允许插入进度条

非常感谢您的帮助,我被卡住了,已经在互联网上搜索过了,无法找到一种适合我情况的方法使进度条正常工作

请对我放轻松点:p我知道我可能在整件事的设置中犯了根本性的错误lol


谢谢,Wilson。

进度条肯定是GUI组件,那么它还能属于哪里呢?但是,它经常显示在您自己的非Swing线程中发生的事情的进度(在Swing线程中执行太多操作会冻结GUI控件)。您不能直接从非摆动线程触摸进度条。使用或将其向前移动。为了避免内存浪费,可以重用内存,将所需的进度分配给内部字段

Runnable doProgress = new Runnable() {

   int progress = 0;

   public void run() {
       myProgressBar.setValue(progress++);
   }
};
// do something 
SwingUtilities.invokeLater(doProgress);
// do more
SwingUtilities.invokeLater(doProgress);