Как получить доступ к компоненту Jframe из класса java и отделить пользовательский интерфейс от логики шаблона наблюдателя?

61
3

Окружающая среда: Я пытаюсь создать простое приложение для обработки данных (читать файл и выполнять некоторую обработку извлеченных данных). Приложение должно поддерживать обновление пользователя в реальном времени обработки. Я поддерживаю интерфейс и логику, чтобы я могу использовать логику для других приложений.

Проблема: у меня есть текстовая область в пользовательском интерфейсе, которая должна отображать информацию о процессе в реальном времени, пользовательский интерфейс с использованием JFrame- Home.java (netbeans Drag & Drop). Логика - Utility.java

Как я могу получить доступ к компоненту JFrame (Home.java) в другом классе (Utility.java)?

Правильный ли доступ к компоненту пользовательского интерфейса и его изменение из логического кода? Делая это, усилием работу по повторному использованию логического класса, как я могу это сделать?

Является ли шаблон наблюдателя здесь решением?

спросил(а) 2021-01-19T17:56:05+03:00 2 месяца, 3 недели назад
1
Решение
75

Это загруженный вопрос, многое зависит. Если бы я это делал, я бы установил ряд интерфейсов.

Я бы начал с модельного интерфейса, который определяет, что вы, собственно, логика. Затем я бы установил ряд интерфейсов слушателя, которые можно было бы зарегистрировать в отношении этой модели, которые обеспечивали бы требуемые обратные вызовы.

Это отделяет логику/модель для представления. Это позволяет вам гибко изменять любую часть, не отрицательно влияя на остальную часть приложения

ответил(а) 2021-01-19T17:56:05+03:00 2 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема