わかりました。このサンプルJavaコードがあります。あなたの多くはおそらく以前にそれを見たことがあります。私はJavaを初めて使用するので、ProgressBarが100%に達した後、または私の場合はnum> = 2000に達した後、実際にどのようにプログラムを呼び出して閉じるのか疑問に思いました。
コード:
package progress;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ProgressMonitor extends JFrame {
JProgressBar current;
JTextArea out;
JButton find;
Thread runner;
int num = 0;
public ProgressMonitor()
{
super("Progress monitor");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(205,68);
setLayout(new FlowLayout());
current = new JProgressBar(0,2000);
current.setValue(0);
current.setStringPainted(true);
add(current);
}
public void iterate()
{
while(num<2000){
current.setValue(num);
try{
Thread.sleep(1000);
}catch (InterruptedException e) { }
num+=95;
}
}
public static void main(String[] args) {
ProgressMonitor pm = new ProgressMonitor();
pm.setVisible(true);
pm.iterate();
}
}
whileブロックでifステートメントを試してみたので、次のように記述しました。
if(num >=2000) System.exit(0);
しかし、何も起こりませんでした。
また、JProgressBar getValue()メソッドを変換し、整数としてボックス化してみました
if ((Integer)current.getValue() >= 100) System.exit(0);
また、current.getValue()> = 2000でも、どちらも機能しませんでした。
解決策を見つけるのを手伝ってもらえますか?前もって感謝します。