Самый простой способ - это сначала контролировать весь доступ к этой статической переменной. Сделайте его приватным и изменяемым только с помощью одного метода. Во-вторых, вызовите этот метод setText()
во всех этих текстовых полях и установите для них новое значение.
Если значение этой переменной можно изменить вне потока диспетчеризации событий, тогда этот метод должен использовать SwingUtilities.invokeLater()
для установки этих текстовых полей; компоненты должны быть доступны только EDT.
Если отображение каждого текстового поля вычисляется несколькими децентрализованными методами, то ваш метод установки переменных просто должен вызвать эти методы (возможно, в invokeLater()
, как указано выше).
Если код изменения переменной не знает заранее, какие текстовые поля будут затронуты, тогда вам нужно разрешить объектам, контролирующим каждое текстовое поле, добавлять себя в код модификации в качестве слушателей. (Это проект MVC, который обычно считается хорошим.) Затем код модификации вызывает каждого слушателя в своем списке и сообщает ему, что значение изменилось.