ดูเหมือนจะไม่เข้าใจว่าทำไมเมื่อทำงานกับค่าบางอย่าง JProgressBar จะหยุดนิ่งและหยุดการคำนวณ ตัวอย่างเช่นโค้ดด้านล่างจะแสดงเฉพาะศูนย์ตลอดเวลา
...
int value = (100/maxGenerations)*i; //maxGenerations = 2500
final int barValue = value;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
progressBar.setValue(barValue);
}
});
แต่ถ้าใช้แบบเดียวกันฉันก็ทำสิ่งต่อไปนี้ได้ (แน่นอนว่าไม่ถูกต้องเหมือนกับการคำนวณขยะ):
...
int value = (i/100); //where 'i' increments until = 2500
final int barValue = value;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
progressBar.setValue(barValue);
}
});
มีความคิดอะไรบ้างว่าทำไม?