Я пытаюсь создать простую форму графического интерфейса, которая имеет только 2 элемента - простую метку и кнопку.Текст, отображаемый на кнопке: «Пуск».На этикетке по умолчанию отображается 0.
Когда я нажимаю кнопку «Пуск», выполняются следующие действия:
- Счетчик начинает увеличиваться на 1 с 0 каждую 1 секунду.
- Текст, отображаемый на «Пуск»кнопка должна измениться на Стоп.
- Когда я снова нажму на ту же кнопку (теперь с надписью Стоп), инкремент остановится.
- Текст на кнопке изменится на Старт.И так далее ...
Я занимаюсь разработкой своего приложения в Netbeans.
Как показано на приведенной выше диаграмме, существует 2 .java-файла
Содержимое AGC.java:
public class AGC extends javax.swing.JFrame
{
public AGC()
{
initComponents();
}
public static void main(String args[])
{
java.awt.EventQueue.invokeLater(new Runnable() {
public void run()
{
new AGC().setVisible(true);
}
});
}
private javax.swing.JButton btnStartStop; // name of start stop button
private javax.swing.JLabel lblCounter; // name of the label
}
Содержимое Main.java:
public class Main
{
public static int count = 0;
public static boolean started = false;
}
Я хочу реализовать следующую логику:
private void btnStartStopMouseClicked(java.awt.event.MouseEvent evt)
{
if (Main.stared == true)
{
// logic to start counting
}
else
{
// logic to stop counting
}
}
Моя проблема заключается в следующем:
- Как обновлять lblCounter каждую 1 секунду?
- Какую логику я должен реализовать, чтобы запустить таймер на 1 секунду и как получить доступ к lblCounter в этом методе?
Пожалуйста, помогите.Рабочий код будет очень высоко ценится.Заранее спасибо.
Джей