ГЛАВА 2. ОБРАБОТКА СОБЫТИЙ. ГРАФИКА.



Графика в Java

 

Графические операции всегда выполняются над объектом Graphics (контекст отображения).  Например, в апплетах для вывода в окно используется метод paint(), которому передается параметр - объект класса Graphics.

 

Некоторые методы класса Graphics:

clearRect -очищает указанный прямоугольник, заполняя цветом фона;

clipRect -задает область ограничения вывода;

copyArea -копирует область экрана;

create -создает новый объект, который является копией исходного объекта;

draw3DRect -рисует прямоугольник с объемным эффектом;

drawArc -рисует дугу текущим цветом;

drawBytes - рисует указанные байты текущим шрифтом и цветом;

drawChars -рисует указанные символы текущим шрифтом и цветом;

drawImage -рисует указанное изображение типа Image;

drawLine - рисует линию между точками;

drawOval -рисует овал внутри указанного прямоугольника текущим цветом;

drawPolygon - рисует многоугольник текущим цветом;

drawRect -Рисует контур прямоугольника текущим цветом;

drawRoundRect -Рисует контур прямоугольника с закругленными краями;

drawString -Рисует указанную строку текущим шрифтом и текущим цветом;

fill3DRect - раскрашивает цветом прямоугольник с объемным эффектом;

fillArc -заполняет дугу текущим цветом;

fillOval - заполняет овал текущим цветом;

fillPolygon - заполняет многоугольник текущим цветом;

fillPolygon -заполняет объект класса Polygon текущим цветом;

fillRect -заполняет прямоугольник текущим цветом;

fillRoundRect -заполняет прямоугольник с закругленными краями;

setPaintMode -устанавливает режим заполнения текущим цветом.

Цвет. Для задания текущего цвета используется метод setColor() класса Graphics. Создадим случайный цвет и установим его, g - объект Graphics:

g.setColor( new Color((float)Math.random(), (float)Math.random(),

 (float)Math.random()));

Цветовая модель языка Java представляет собой 24-разрядную модель RGB (красный, синий, зеленый), следовательно объекты класса Color могут содержать 24 разряда цветовой информации (что соответствует 16 миллионам различных цветов).

Для использования цвета необходимо сначала создать объект Color и передать в него значения красного, зеленого и синего цвета (существуют два конструктора - для задания целочисленных значений (каждое значение от 0 до 255) и значений с плавающей точкой (каждое значение от 0.0 до 1.0)). Совместно эти значения и определяют цвет.

Color clr1=new Color(255,0,0);           // создать красный цвет

Color clr2=new Color(255,255,255); // создать белый цвет

Color clr3=new Color(0,0,0);            // создать черный цвет

Можно использовать заранее определенные цвета Color.white, Color.lightGray, Color.gray, Color.darkGray, Color.black, Color.red, Color.pink, Color.orange, Color.yellow, Color.green, Color.magenta, Color.cyan, Color.blue. При использовании этих цветов не нужно создавать новый объект Color, можно записать следующее:

g.setColor(Color.red);

Помимо установки цвета отображения текста и графики методом setColor(), можно установить цвет фона и цвет переднего плана методами setBackground() и setForeground() класса Component.

Шрифты. Класс Graphics позволяет размещать на экране текст с использованием установленного шрифта. Для задания шрифта необходимо создать объект класса Font с параметрами: название гарнитуры шрифта (тип String), стиль шрифта (тип int) и размер шрифта в пунктах (тип int):

Font f=new Font("Times Roman",Font.BOLD,72);

Хотя можно выбрать любое начертание (гарнитуру) шрифта, рекомендуется использовать достаточно ограниченный набор шрифтов ("Times Roman", "Courier", "Helvetica"), которые имеются на всех системах.

Для задания стиля шрифта используются константы класса Font: Font.PLAIN, Font.BOLD и Font.ITALIC. Эти стили можно объединять при помощи операции +. После создания шрифта его можно установить для использования при помощи метода setFont() класса Graphics:

g.setFont(new Font("Times Roman",Font.BOLD,72));

Некоторые методы класса Font:

getFamily -получает название шрифта, зависящее от платформы;

getName -получает логическое имя шрифта;

getStyle -получает стиль шрифта;

getSize -получает размер шрифта в пунктах;

isPlain -возвращает true, если шрифт простой;

isBold -возвращает true, если шрифт полужирный;

isItalic - возвращает true, если шрифт курсивный.

getFont - получает шрифт из списка параметров системы

Если выбрать шрифт, который не установлен на конкретной машине, Java заменит его стандартным шрифтом (например, Courier). Для того, чтобы узнать какие шрифты доступны, можно воспользоваться методом getAllFonts(),определенным в классе GraphicsEnvironment.Ну, а если Вы захотите определить разрешение экрана и его размер, то можно воспользоваться методами классаToolkit: getScreenResolution() и getScreenSize().

Создадим апплет двойного назначения FontsList, в окне которого отображается список всех доступных апплету шрифтов.

 


Дата добавления: 2018-04-15; просмотров: 300; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!