Работаю с java swing.
На мониторе отображаются данные с переменной newDegree (благодаря Thread конвертируются разные данные каждые 5 секунд).
Когда кнопка jButton1 нажимается, то данные должны так же постоянно изменяться, но уже отображаться быть в формате фаренгейта far.
Пока удалось только сделать следующее: когда нажимается кнопка, то один раз отображается значение far. Однако далее опять newDegree.
Задача в том, чтобы отображались значения farдо тих пор пока не будет закрыта программа или нажата другая кнопка.
По сути программа просто выдает изменения температуры в цельсиях и должна при нажатии кнопки выдавать постоянно данные по Фаренгейту.
private void heatSensor1HeatChanged(system.HeatChangedEvent evt) {
double newDegree = evt.getCelsius();
String date = evt.getDate();
monitor1.setText(String.valueOf(newDegree));
far = newDegree;
far = 9*far/5 + 32;
System.out.println("F=============");
System.out.println(far);
System.out.println("F=============");
System.out.println("C=============");
System.out.println(newDegree);
System.out.println("C=============");
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
monitor1.setText(String.valueOf(far));
// TODO add your handling code here:
}
Я бы сделал следующим образом.
В методе jButton1ActionPerformed по клику на кнопку просто меняется значение этой переменной.
if (isTemperatureInCelcium) {
isTemperatureInCelcium = false;
} else {
isTemperatureInCelcium = true;
}
В методе heatSensor1HeatChanged, который, как я понял, запускается каждые несколько секунд просто выполнить проверку следующего рода и менять текст на мониторе в зависимости от значения переменной.
if (isTemperatureInCelcium) {
monitor1.setText(String.valueOf(newDegree));
} else {
monitor1.setText(String.valueOf(far));
}
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники