Не могу справиться с ActionListener - Java
Формулировка задачи:
package com.company;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Main {
public static void main(String[] args) throws InterruptedException {
JFrame fr = new JFrame("os");
JButton b1, b2;
JLabel l1, l2, l3, l4, l5;
JProgressBar pb1, pb2, pb3, pb4;
fr.setVisible(true);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fr.setLocationRelativeTo(null);
fr.setResizable(false);
fr.setLayout(new FlowLayout());
fr.setSize(300, 200);
b1 = new JButton("Start");
b2 = new JButton("Задание");
b2.addActionListener(new click());
l1 = new JLabel("FCFS ");
l2 = new JLabel("Пр1=07сек");
l3 = new JLabel("Пр2=18сек");
l4 = new JLabel("Пр3=26сек");
l5 = new JLabel("Пр4=39сек");
pb1 = new JProgressBar();
pb2 = new JProgressBar();
pb3 = new JProgressBar();
pb4 = new JProgressBar();
fr.add(pb1);
fr.add(b1);
fr.add(b2);
fr.add(l1);
fr.add(pb1);
fr.add(l2);
fr.add(pb2);
fr.add(l3);
fr.add(pb3);
fr.add(l4);
fr.add(pb4);
fr.add(l5);
pb1.setMinimum(0);
pb1.setMaximum(7);
pb1.setStringPainted(true);
pb2.setMinimum(0);
pb2.setMaximum(18);
pb2.setStringPainted(true);
pb3.setMinimum(0);
pb3.setMaximum(26);
pb3.setStringPainted(true);
pb4.setMinimum(0);
pb4.setMaximum(39);
pb4.setStringPainted(true);
for (int i = pb1.getMinimum(); i <= pb1.getMaximum(); i++) {
Thread.sleep(1000);
pb1.setValue(i);
}
for (int k = pb2.getMinimum(); k <= pb2.getMaximum(); k++) {
Thread.sleep(1000);
pb2.setValue(k);
}
for (int l = pb3.getMinimum(); l <= pb3.getMaximum(); l++) {
Thread.sleep(1000);
pb3.setValue(l);
}
for (int j = pb4.getMinimum(); j <= pb4.getMaximum(); j++) {
Thread.sleep(1000);
pb4.setValue(j);
}
}
}Решение задачи: «Не могу справиться с ActionListener»
textual
Листинг программы
package swing.button;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Main {
public static void main(String[] args) throws InterruptedException {
JFrame fr = new JFrame("os");
JButton b1, b2;
JLabel l1, l2, l3, l4, l5;
JProgressBar pb1, pb2, pb3, pb4;
fr.setVisible(true);
fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fr.setLocationRelativeTo(null);
fr.setResizable(false);
fr.setLayout(new FlowLayout());
fr.setSize(300, 200);
b1 = new JButton("Start");
b2 = new JButton("Задание");
l1 = new JLabel("FCFS ");
l2 = new JLabel("Пр1=07сек");
l3 = new JLabel("Пр2=18сек");
l4 = new JLabel("Пр3=26сек");
l5 = new JLabel("Пр4=39сек");
pb1 = new JProgressBar();
pb2 = new JProgressBar();
pb3 = new JProgressBar();
pb4 = new JProgressBar();
fr.add(pb1);
fr.add(b1);
fr.add(b2);
fr.add(l1);
fr.add(pb1);
fr.add(l2);
fr.add(pb2);
fr.add(l3);
fr.add(pb3);
fr.add(l4);
fr.add(pb4);
fr.add(l5);
pb1.setMinimum(0);
pb1.setMaximum(7);
pb1.setStringPainted(true);
pb2.setMinimum(0);
pb2.setMaximum(18);
pb2.setStringPainted(true);
pb3.setMinimum(0);
pb3.setMaximum(26);
pb3.setStringPainted(true);
pb4.setMinimum(0);
pb4.setMaximum(39);
pb4.setStringPainted(true);
new Thread(new Runnable() {
@Override
public void run() {
try {
for (int i = pb1.getMinimum(); i <= pb1.getMaximum(); i++) {
Thread.sleep(1000);
pb1.setValue(i);
}
for (int k = pb2.getMinimum(); k <= pb2.getMaximum(); k++) {
Thread.sleep(1000);
pb2.setValue(k);
}
for (int l = pb3.getMinimum(); l <= pb3.getMaximum(); l++) {
Thread.sleep(1000);
pb3.setValue(l);
}
for (int j = pb4.getMinimum(); j <= pb4.getMaximum(); j++) {
Thread.sleep(1000);
pb4.setValue(j);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}).start();
b1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
pb1.setValue( 0);
}
});
b2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
pb2.setValue( 0);
}
});
}
}