Есть переменная с типом double. Значение этой переменной рассчитывается в бесконечном цикле и оно постоянно изменяется. Это значение должно выводится на форму в JTextField. Сейчас у меня создан нехитрый класс-наследник от JTextField:
public class ChartTabTextField extends JTextField {
private double factor = 1.0;
private String format = "%d";
public ChartTabTextField(double d, String format, double factor) {
this.factor = factor;
this.format = format;
setText(d);
}
public void setText(double d) {
if (format.equals("%d")) {
setText(String.format(format, (int) (d * factor)));
} else {
setText(String.format(format, d * factor));
}
}
}
на форму он попадает так:
ChartTabTextField jtf = new ChartTabTextField(ve.pot.params.amp, "%.1f", 0.001);
jPanel1.add(jtf);
Вопрос: как привязать значение переменной ve.pot.params.amp к jTextField?
Вариант с setText из тела цикла не подходит, потому что таких переменных будет много (как и компонентов на форме) и все они рассчитываются в разных местах, а могут и не рассчитываться. В общем хочется некоторой универсальности или упрощенности что-ли: добавил на форму вывод нужной переменной и она автоматически стала "отслеживаемой". Как и с помощью каких классов написать такую "следилку", чтобы она автоматом делала setText?
п.с. ну как в QML: если там создать текстовое поле и установить на текст глобальную переменную, то текст будет автоматом меняться вместе со значением этой переменной. Там даже ничего делать не нужно :)