Developer от Бога

DV

четверг, 6 июля 2017 г.

Java. Создание графических приложений

В статье - Java. Графики функций было рассмотрено графическая составляющая простейшего приложения - рисование графиков математических функций. Здесь более подробно описан процесс организации графического приложения.
С точки зрения окон, есть два главных момента, это создание собственно окна приложения, унаследовавшее класс JFrame, а также создание панелей, наследовавшие класс JPanel. Окно приложения, есть статичным по своей сути объектом, фундамент, все элементы: кнопки, изображения и другие, ставятся вначале на панель JPanel, а потом на сами окна JFrame. Поэтому после создания класса окна, создаются панели на которых размещены кнопки, в даном примере это класс buttonpanel, и другие панели элементов которые и рисуют графики.
После создания нужных классов панелей, в главном классе JFrame, создаем уже объекты этих вышеперечисленных классов панелей:

buttonpanel btp= new buttonpanel();//Класс с кнопками RadioBut rb=new RadioBut();//Класс с кнопками
scale sc=new scale();// Класс рисующий графику
static Graph_26_02 gp;//главный объект всей программы

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

Container head_container = getContentPane();
Container container_graph = new Container();
head_container.setLayout(new BorderLayout());
container_graph.add(sc);
head_container.add(container_graph,BorderLayout.CENTER);
head_container.add(rb,BorderLayout.SOUTH);
head_container.add(btp,BorderLayout.NORTH);

Также в главном классе присутствует очень важная функция - перерисовки окна

public static void repaintf(){
gp.repaint();
}

С этой функцией часто бывают проблемы, особенно если ее вызывать из других классов. Тут стоит следить, что функции static можно вызывать только их других функций static , главная функция main также является статичной, если с нее вызывать функцию перерисовки окна, то функция должна быть статичной. Вызов не статичной функции из статичной - невозможен, как и static функции из не static.
При построении программ, следует также разделять приложение на специализированные части:
- визуальная графическая часть, для отображения приложения.
-часть которая принимает разного рода сигналы, события.
- алгоритмическая часть, которая вычисляет задачи.

Комментариев нет:

Отправить комментарий