Delphi | Сети | ПК | Маршрутизаторы | Моделирование | Протоколы | Экспертные системы | Удаленный доступ | Доменные имена
Аплеты | SQL | Надежность | Задачи | Информационные процессы | JAVA | Отказы изделия | Расчет надежности показателей | Инфсис

Графические примитивы в Java

Интерфейс в языке Java представляет собой "чисто абстрактный класс", т.е. класс, все методы которого являются абстрактными. Производный от интерфейса класс "раскрывает" (implements) интерфейс, предоставляя коды для всех его методов. Класс может расширять только один базовый класс, но раскрывать он может несколько интерфейсов. Переменные интерфейса могут быть только static (т.е., переменные класса, а не объекта) и final (т.е., константы).

Класс GeneralPath

Вначале создается пустой объект класса GeneralPath конструктором по умолчанию GeneralPath () или объект, содержащий одну фигуру, конструктором GeneralPath (Shape sh).

Затем к этому объекту добавляются фигуры методом append(Shape sh, boolean connect)

Если параметр connect равен true, то новая фигура соединяется с предыдущими фигурами с помощью текущего пера.

В объекте есть текущая точка. Вначале ее координаты (0, 0), затем ее можно переместить в точку (х, у) методом moveTo (float x, float у).

От текущей точки к точке (х, у) можно провести: 

Текущей точкой после этого становится точка (х, у). Начальную и конечную точки можно соединить методом ciosePath(). Вот как можно создать треугольник с заданными вершинами:

GeneralPath p = new GeneralPath();

p.moveTo(xl, yl); // Переносим текущую точку в первую вершину,

p.lineTo(x2, y2); // проводим сторону треугольника до второй вершины,

p.lineTo(x3, уЗ); // проводим вторую сторону,

p.closePathf);    // проводим третью сторону до первой вершины

Способы заполнения фигур определены в интерфейсе Paint. В настоящее время Java 2D содержит три реализации этого интерфейса — классы color, GradientPaint и TexturePamt. Класс Color нам известен, посмотрим, какие способы заливки предлагают классы GradientPaint И TexturePaint. Создание оконных приложений

Для создания оконных приложений удобнее всего использовать класс Frame. В иерархии классов он выглядит следующим образом:

java.lang.Object
|
+----java.awt.Component
|
+----java.awt.Container
|
+----java.awt.Window
|
+----java.awt.Frame


По своей природе этот класс похож на классы Applet и Panel. В объекте класса Frame можно размещать элементы управления. Класс, производный от Frame, может раскрывать интерфейсы ActionListener и ItemListener.
Простейшее оконное приложение имеет вид:

// Простое оконное приложение
import java.awt.event.*;
import java.awt.*;

class SimpleFrame extends Frame
{
public static void main(String[] args)
{
SimpleFrame a= new SimpleFrame();
}

SimpleFrame()
{
setTitle("Оконное приложение");
setSize(400,200);
show();
}
}

На первый взгляд структура программы не совсем привычна - в функции main создается объект того же класса, к которому принадлежит функция main. Зато при создании объекта можно вызвать конструктор с параметрами.

Если вы запустите это приложение, то сразу же обратите внимание, что кнопка закрытия окна не работает. Для обработки событий окна нужно писать специальный код. Он может выглядеть, например, так (код располагается в конструкторе)

addWindowListener(
new WindowAdapter()
{ public void windowClosing(WindowEvent e)
{
dispose();
System.exit(0);
}
});

Математический анализ, лекции по физике Компьютерные сети