Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Инициализация и завершение апплета
Важно понять порядок, в котором вызываются различные методы апплета. Когда апплет начинает выполняться, AWT вызывает методы в такой последовательности: 1) init(); 2) start(); 3) paint(); При завершении апплета имеет место следующая последовательность вызовов: 1) stop(); 2) destroy();
Запуск апплетов Апплет можно запускать как из HTML -документа, так и из программы просмотра апплета. Для этого используется тег <applet> языка HTML. Программа просмотра апплета выполняет каждый <applet> -тeг, который она находит, в отдельном окне, в то время как Web -браузеры Netscape Navigator, Internet Explorer и HotJava допускают много апплетов на одной странице. Покажем синтаксис тега <applet>. Параметры в квадратных скобках не обязательны.
<applet [CODEBASE = codebaseURL] CODE = appletFile [ALT = altemateText] [NAME = appletInstanceName] WIDTH = pixels HEIGHT = pixels [ALIGN = alignment] [VSPACE = pixels] [HSPACE = pixels] > [< param NAME = AttributeName value = AttributeValue>] [< param NAME = AttributeName2 value= AttributeValue>] [HTML Displayed in the absence of Java] </applet> CODEBASE − необязательный параметр, который определяет базовый URL -адрес кода апплета. Базовый URL — это каталог, в котором будет разыскиваться исполняемый файл апплета (имя этого файла указывается параметром CODE). CODE − обязательный параметр, который задает имя файла, содержащего откомпилированный файл (с расширением .class) вашего апплета. WIDTH и HEIGHT − это обязательные параметры, которые задают размер области показа апплета (в пикселах). ALIGN − необязательный параметр, который определяет выравнивание апплета. Возможные значения: left, right, top, bottom, middle, BASELINE, TEXTTOP, ABSMTODLE И ABSBOTTOM. <param> (с параметрами NAME= и VALUE=) – тег, позволяющий указывать на HTML -странице параметры, специфические для данного апплета. Апплет получает доступ к этим параметрам с помощью метода getParameter(). Пример Web -странички, на которой размещен апплет DemoApplet.class:
Пример 1.1 <html> <head> <title> DemoApplet</title> </head> <applet CODE="DemoApplet.class" WIDTH ="500" HEIGTH="500"> </applet> </html> Рисование линий в апплете Линии рисуются методом drawLine() формата: void drawLine (int startx, int startY, int endX, int endY) Данный метод отображает линию (в текущем цвете рисования), которая начинается в координатах startX, startY и заканчивается в endX, endY. Пример использования метода: Пример 1.2 public void paint(Graphics g) { g.drawLine(0, 0, 100, 100);
} Рисование прямоугольников в апплете Методы drawRect() и fillRect() отображают соответственно рисованный и заполненный прямоугольник. Их форматы:
void drawRect(int top, int left, int width, int height) void fillRect(int tap, int left, int width, int height)
Координаты левого верхнего угла прямоугольника задаются в параметрах top и left, width и height,указывающих размеры прямоугольника (в пикселах). Пример 1.3 public void paint(Graphics g) { g.drawRect(10, 10, 60, 50); g.fillRect(100, 10, 60, 50); }
Рисование эллипсов и кругов в апплете Для рисования эллипса используется drawOval (), а для его заполнения – fillOval(). Эти методы имеют форматы: void drawOval(int top, int left, int width, int height) void fillOval(int top, int left, int width, int height) Пример 1.4 public void paint(Graphics g) { g.drawOval(10, 10, 50, 50); g.fillOval(100, 10, 75, 50); } Рисование дуг в апплете Дуги можно рисовать методами drawArc() и fillArct(), используя форматы: void drawArc(int top, int left, int width, int height, int начало, int конец) void fillArc(int top, int left, int width, int height, int начало, int конец)
Дуга ограничена прямоугольником; левый верхний угол прямоугольника определяется параметрами top, left, а ширина и высота — параметрами width и height. Дуга рисуется от начала до углового расстояния, указанного в конец. Углы указываются в градусах и отсчитываются от горизонтальной оси против часовой стрелки. Дуга рисуется против часовой стрелки, если конец положителен, и по часовой стрелке, если конец отрицателен. Поэтому, чтобы нарисовать дугу от 12-часового до 6-часового положений, начальный угол должен быть 90° и угол развертки 180°.
Пример 1.5 public void paint(Graphics g) { g.drawArc(0, 40, 70, 70, 0, 75); g. fillArc (0, 40, 70, 70, 0, 75); }
Работа с цветом Работа с цветом поддерживается классом Color. В Color определено несколько цветовых констант (например color.black), специфицирующих ряд обычных цветов. Возможно также создание собственных цветов, применением одного из цветовых конструкторов. Обычно используются следующие его форматы: Color (int red, int green, int blue) Color (int rgbValue) Color(float red, float green, float blue)
Пример 1.6 new Color(255, 100, 100); // светло-красный
По умолчанию графические объекты рисуются в текущем цвете переднего плана. Можно изменить этот цвет, вызывая метод setColor () класса Graphics: void setColor(Color newColor)// параметр newColor определяет новый цвет рисунка.
Вызывая метод getColor (), возможно получение текущего цвета,: Color getColor() Следующий пример демонстрирует рисование «Домика» в апплете. Пример 1.7 Листинг файла DrawHouseApplet.java import java.awt.*; import java.applet.*; public class DrawHouseApplet extends Applet { //функция прорисовки апплета public void paint(Graphics g) { g.setColor(Color.DARK_GRAY); g.drawLine(50, 150, 200, 50); g.drawLine(200, 50, 350, 150); g.drawLine(350, 150, 50, 150); g.drawLine(50, 150, 200, 50); g.drawLine(200, 50, 350, 150); g.drawLine(350, 150, 50, 150); g.drawRect(100, 150, 200, 200); g.drawLine(50, 150, 200, 50); g.drawLine(200, 50, 350, 150); g.drawLine(350, 150, 50, 150); g.drawRect(100, 150, 200, 200); g.drawRect(170, 200, 60, 100); g.drawLine(50, 150, 200, 50); g.drawLine(200, 50, 350, 150); g.drawLine(350, 150, 50, 150); g.drawRect(100, 150, 200, 200); g.drawRect(170, 200, 60, 100); g.drawLine(200, 200, 200, 300); g.drawLine(170, 250, 230, 250); g.setColor(Color.MAGENTA); g.drawString("Домик", 190, 30); } }
Откомпилируйте файл DrawHouseApplet.java. Для этого можно использовать команду javac DrawHouseApplet.java. Потом создайте файл, листинг которого приведен ниже. Запустите его с помощью браузера. Листинг DrawHouseApplet.html
<HTML> <HEAD> </HEAD> <BODY BGCOLOR="000000"> <CENTER> <APPLET code = "DrawHouseApplet.class" width = "500" height = "300"> </APPLET> </CENTER> </BODY> </HTML>
Результаты работы апплета показаны на рис. 1.2.
Рис. 1.2. Результаты работы апплета DrawHouseApplet В программе ниже демонстрируется рисование строк и графических объектов разными цветами в апплете.
Пример 1.8 Листинг AppletSample.java import java.awt.*; import java.applet.*; public class AppletSample extends Applet { int poly_x[]={140,180,180,140,100,100,140};//x-координаты //для полигона int poly_y[]={205,225,245,265,245,225,205};//y-координаты //для полигона public void paint(Graphics g) { g.setColor(Color.yellow);//выбрать желтый цвет g.drawString("Yellow Color", 10, 30);//нарисовать текст желтым // цветом g.drawLine(100, 30, 100, 100);//нарисовать линию g.drawRect(200, 30, 60, 50);//нарисовать прямоугольник g.fillRect(200, 30, 60, 50);//нарисовать заполненный прямоугольник g.setColor(Color.red);//выбрать красный цвет g.drawString("Red Color", 10, 130);//нарисовать текст желтым //цветом g.drawOval(100, 130, 50, 50); //нарисовать овал g.fillOval(200, 130, 75, 50);//нарисовать заполненный овал g.drawArc(300, 130, 70, 70, 0, 75);//нарисовать дугу окружности g.fillArc(400, 130, 70, 70, 0, 75);//нарисовать заполненную дугу Color c1 = new Color(100, 100, 255);//создать собственный цвет g.setColor(c1);//выбрать собственный цвет g.drawString("Own Color", 10, 200);//нарисовать текст собственным //цветом g.drawPolygon(poly_x,poly_y,poly_x.length);//нарисовать многоугольник } } Листинг AppletSample.html <HTML> <HEAD> </HEAD> <BODY BGCOLOR="000000"> <CENTER> <APPLET code = "AppletSample.class" width = "500" height = "300" > </APPLET> </CENTER> </BODY> </HTML> Результат работы показан на рисунке 1.3.
Рис. 1.3. Результат работы апплета
|
||||||
Последнее изменение этой страницы: 2017-02-09; просмотров: 142; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.219.236.62 (0.029 с.) |