У меня есть форма с некоторыми флажками и прядильщиками. Все они имеют ActionListeners \ ChangeListeners, назначенные им, поэтому каждый раз, когда вы меняете какой-то элемент, программа запускает метод create(), который собирает все значения из всей формы и помещает их в объект, который можно сохранить на диск позже.Обновление элементов формы с помощью ActionListener из загруженных объектов
Но теперь я пытаюсь заставить программу загрузить этот объект из файла и обновить интерфейс в соответствии с тем, что было загружено. Здесь возникают проблемы. После того, как программа загрузила объект, она пытается обновить элементы формы, но так же, как она меняет первый, запускается ActionListener и собирает все значения из формы и перезаписывает ранее загруженный объект.
Что было бы хорошим способом решить эту проблему?
Сейчас я собираюсь создать глобальную переменную, чтобы «отключить» метод create() при загрузке объекта (то есть создать флаг, который останавливает прослушиватели действий). Но я не уверен, что это хорошая идея.
Что вы подразумеваете под _loading_ objects? [Как я могу спросить] (http://stackoverflow.com/help/mcve) –
Добавить флаг, который либо останавливает выполнение ActionListener'ами своих задач, либо содержимое, записанное в файл. Установите этот флаг перед загрузкой содержимого. – MadProgrammer
Загрузка объектов означает сериализацию в моем случае с помощью ObjectInputStream. – Zmur