我试图在简单的java gui中显示实时计数,我使用了optionPane但是有一个内置按钮。因此,每次显示下一个数字时,用户都必须按下按钮。有没有办法让数字在一个简单的gui中自行运行?
示例:
for(int i = 0; i < 100; i++)
{
JOptionPane.showMessageDialog(null, i);
}
答案 0 :(得分:1)
使用javax.swing.Timer
是最好的选择。您可以运行以下示例。您可以在How to use Swing Timers
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.SwingUtilities;
import javax.swing.Timer;
public class TimerDemo {
static int count = 0;
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
final JLabel time = new JLabel(String.valueOf(count));
Timer timer = new Timer(1000, new ActionListener() {
public void actionPerformed(ActionEvent e) {
if (count >= 100) {
((Timer) e.getSource()).stop();
} else {
count++;
time.setText(String.valueOf(count));
}
}
});
timer.start();
JOptionPane.showMessageDialog(null, time);
}
});
}
}
答案 1 :(得分:0)
用户单击“确定”不是1对话框,弹出100个对话框,