如何從另一個線程更新JProgressBar.setValue(int)? 我的第二個目標是儘可能少地使用它。從新主題更新JProgressBar
這裏是我現在所擁有的代碼:
// Part of the main class....
pp.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
new Thread(new Task(sd.getValue())).start();
}
});
public class Task implements Runnable {
int val;
public Task(int value){
this.val = value;
}
@Override
public void run() {
for (int i = 0; i <= value; i++){ // Progressively increment variable i
pbar.setValue(i); // Set value
pbar.repaint(); // Refresh graphics
try{Thread.sleep(50);} // Sleep 50 milliseconds
catch (InterruptedException err){}
}
}
}
頁是一個JButton,並單擊將JButton時啓動新線程。
pbar是Main類中的JProgressBar對象。
如何更新它的價值?(進度)
在運行上面的代碼()無法看到PBAR。