Самоучитель по креативному веб-дизайну. Книга 3, стр.88

мое на две страницы. PopupNavigator .clas s — аплет, написанный Бранко

Димитриевичем (Branco Dimitrijevic) — это решение, позволяющее представить навигационную панель в виде иерархического меню. Чтобы сэкономить про — странство, аплет появляется на экране в виде кнопки, которая по щелчку на ней

выводит на экран меню, «всплывающее» над содержимым Web-страницы, как можно видеть на рис. 9.14.



Когда пользователь щелкает на кнопке, браузер запускает аплет, который вы — водит на экран всплывающее меню. Внутри меню пользователь просто щелкает

на выбранном пункте. Аплет затем извлекает и отображает HTML-документ, свя —

/ занный с пунктом, который выбрал посетитель. Web-страница, соответствующая пункту меню, может находиться на текущем Web-сайте или же на другом сайте.

Если посетитель наводит курсор мыши на пункт меню со стрелкой вправо (как пункт Аплеты на рис. 9.14), аплет отобразит подменю, состоящее из дополни — тельных пунктов.



ПРАКТИКУМ

Выгрузить аплет PopupNavigator. class вместе с его исходным кодом можно из сайта издателя русскоязычной редакции этой книги. Скопировав архив

PopupNavigator. zip в папку на своем компьютере, извлеките из него файлы

Глава 9. Java-аплеты и объекты ActiveX 46 5





.clas s (Java-аплет), .gif (изображение) и. ja r (Java-архив). Чтобы использовать

всплывающее навигационное меню на своей Web-странице, скопируйте все фай —

лы. gif и либо файл. jar, либо все файлы .clas s в ту же папку, где находится Web-страница. Затем вставьте приведенные ниже строки в код страницы, туда, где должна будет находиться кнопка всплывающего меню:



code=»PopupNavigator/PopupNavigatorApplet. class»

archive=»PopupNavigator. j ar»>

value=»HTML & Web Design;Arial;BOLDITALIC;16;RED;200 255 0″>



param name=»ImagePosition» value=»LEFT;4″>

name=»0″

value=»NVBizNet;http://www. NVBizNet. com»>

name=»l»

value=»Рисунки;ListOfFigures. htm»>



param name=»2;0″ value=»JavaClock;Chpt09Tipl. htm»>

name=»2;l» value=» PopupNavigator;ChptO9Tip2.htm»>



ПРИМЕЧАНИЕ PopupNavigator. ja r — это файл Java-архива, содержащий все. class — файлы аплета в сжатом формате. Для снижения продолжительности загрузки следует пользоваться .jar-файлом, если таковой доступен. Аплет будет функционировать одинако —

Самоучитель по креативному веб-дизайну. Книга 3, стр.89

во вне зависимости от того, используются. class-файл ы или. jar-файл. Для подключения

.jar-файла необходимо добавить в дескриптор атрибут archiv e и указать в нем имя файла Java-архива. При отсутствии атрибута archiv e начальный дескриптор

дает Web-браузеру указание загружать . class-файл ы аплета.



Параметры, используемые для настройки всплывающего меню, описаны ниже.

• label. Разделенная точками с запятыми (;) строка с надписью, которая

будет помещена на кнопку, и описанием того, как должны выглядеть над — пись и сама кнопка. Синтаксис строки значений надписи выглядит так:

«;;;;текст а

надписихцвет кнопки>». Если вы вовсе опустите параметр надписи, ап —

лет выведет в качестве текста надписи кнопки слово «Navigate». Вы также можете использовать значения, установленные в браузере по умолчанию,

ДЛЯ, стиля шрифта> И, ОПУСТИВ ЭТИ Значения ИЗ строки значений. Задавая цвет кнопки или текста подписи, используйте либо название цвета Netscape Navigator, либо выражайте цвет в виде трип — лета десятичных чисел (с пробелами между числами), соответствующих RGB-составляющим цвета. Если вы опустите подписи> или, аплет выведет черный текст на серой кнопке.

• image. Имя пути (URL-адрес) изображения, которое должно выводиться на кнопке. Если вы хотите, чтобы на кнопке была только текстовая над — пись, опустите параметр image. Например, приведенный выше код поме —

щает на кнопку подпись «HTML & web Design» путем установки значения параметра labe l равным:



«HTML & Web Design;Arial;BOLDITALIC;16;RED;200 255 0″

46 6 Глава 9. Java-аплеты и объекты ActiveX





• imageposition. Месторасположение изображения (заданного параметром

image) относительно краев кнопки. К возможным значениям относятся:

- CENTER Отцентрировать изображение на кнопке.

- LEFT, RIGHT, TOP, BOTTOM Расположить изображение относительно середи- ны левого, правого, верхнего или нижнего края кнопки. Например,

vaiue=»LEFT;4M дает аплету указание расположить изображение на рассто —

янии 4 пикселей (по направлению к центру кнопки) от левого края кноп —

ки. : .’ .

- ABSOLUTE Расположить изображение в определенной точке координат

(х, у) внутри кнопки. Например, vaiue=» ABSOLUTE; 24,16 м дает аплету

указание расположить изображение в точке координат 24 (х), 16 (у) от — носительно верхнего левого угла кнопки.

для каждого пункта меню имеет атри — бут name, состоящий из разделенного точками с запятыми (;) набора це- лочисленных координат. Атрибут valu e дескриптора параметра состоит из текста пункта, после которого ставится точка с запятой и затем URL-адрес Web-страницы, которую аплет должен вывести, когда посетитель выберет данный пункт меню.

Самоучитель по креативному веб-дизайну. Книга 3, стр.90



ПРАКТИКУМ

Хотя меню в примере в начале данного практикума имеет только два уровня, мож- но создать иерархическое меню, содержащее сколько угодно подменю — что зна — чит, что подменю могут иметь подменю, которые, в свою очередь, могут иметь подменю, и так далее. Например, чтобы добавить два уровня подменю к пункту Рисунки из предыдущего примера, необходимо изменить объявления параметров следующим образом:



param name=»i» уа1ие=»Рисунки;»>

name=»2″ уа1ие=»Аплеты;»>

value=»Глава 1;»>

value=»Глава 2;»>

value=»Глава 1;Рисунок 1;Figl-l. htm»>

name=»l;0;l» value=»Глава 1;Рисунок 2;Figl-2.htm»>

param name=»l;l;0″ value=MГлава 2;Рисунок l;Fig2-l. htm»>

2;Рисунок 2;Fig2-2.htm»>

value=»JavaClock;Chpt09Tipl. htm»>

PopupNavigator;ChptO9Tip2.htm»>



Обратите внимание, что пункты меню, которые, будучи выбранными, раскры —

вают подменю (например, «Рисунки» и «Аплеты»), имеют только текст меню и не имеют URL-адреса. И наоборот, пункты меню, не имеющие подменю (такие

как «NVBizNet», «Глава 1; Рисунок 1″, «Глава 2; Рисунок 2″) имеют и текст, кото — рый браузер должен вывести как пункт (под)меню, и URL-адрес Web-страницы, извлечь которую аплет должен поручить браузеру.

Глава 9. Java-аплеты и объекты ActiveX. 46 7



Анимация строки текста с помощью аплета

Если вы хотите привлечь внимание посетителя к баннеру или абзацу текста

выполните их анимацию. Поскольку символы в строке обычно остаются неиз-

менными, анимированный текст (то есть текст, который изменяется) привлекает внимание: Один из способов реализовать анимацию текста — это создать бегу — щую строку, чтобы текст «перебегал» через экран. Другой способ — воспользо —

ваться таким аплетом, как AnimText. class, который непрерывно изменяет раз — мер каждого из символов в неподвижной строке.



ПРАКТИКУМ

Аплет AnimText. class вместе с исходным кодом доступен на сайте издателя русскоязычной редакции этой книги. Скопировав архив AnimText. zip в папку

на своем компьютере, извлеките из него AnimText. class. Чтобы использовать

аплет на своей Web-странице, скопируйте .class-файл аплета (AnimText. class) в

ту же папку, где находится Web-страница. Затем вставьте показанные ниже строки в

HTML-код страницы, туда, где должен находиться анимированный текст:



height=»65″>

name=»text»

value=»HTML & Web Design «>

name=»font»

value=»Time sNewRoman»>

name=»style»

value=»PLAIN»>

param name=» fgcolor » value=»blue»>



param name=»type» value=»wave»>

name=»min» value=»14″>

value=»48″>





Для определения текста, его внешнего вида и анимационного эффекта служат следующие параметры, которые можно передать аплету:

• text. Строка текста, анимацию которой требуется выполнить. По умолча — нию — «Welcome to Java!» («Добро пожаловать в Java!») .

• font. Шрифт, который должен использовать аплет. По умолчанию —

«TimesRoman».

• style. Стиль шрифта: обычный (plain), полужирный (bold) или курсив

(italic) . По умолчанию —»plain».

• fgcolor. Цвет текста, выраженный в виде слова либо в форме строки из трех разделенных двоеточиями (:) RGB-значений (см. задание параметра bgcolor в приведенном выше коде). Возможные словесные значения цве —

тов — red (краСНЫЙ), blue (СИНИЙ), green (зеленый), yellow (жеЛТЫЙ),

white (белый), orange (оранжевый), cyan (голубой), magenta (пурпурный)

И black (черный). По умОЛЧаНИЮ — «black».

• bgcolor. Фоновый цвет аплета, выраженный либо как слово (см. задание па —

раметра fgcoior в приведенном выше коде), либо как строка из трех разде — ленных двоеточиями (:) RGB-значений. Возможные словесные значения цве — тов — те же, что и для fgcoior. По умолчанию — «lightgray» (светлосерый).

46 8 Глава 9. Java-аплеты и объекты ActiveX





• type. Определяет, будет аплет увеличивать или уменьшать размер всех символов в строке текста вместе — blin k (мерцание) или независимо — wave (волна). Кроме мерцания и волны, вы можете установить атрибут type равным random (случайный) и предоставить выбор эффекта (из двух), используемого при анимации текста, компьютеру посетителя. По умолча —

Самоучитель по креативному веб-дизайну. Книга 3, стр.91

нию — «wave» (волна).

• max. Максимальный размер символа в пунктах. По умолчанию — «28″.

• min. Минимальный размер символа в пунктах. По умолчанию — «8″ .

• align. Можно выровнять текст по левому краю, по правому краю или отцен- трировать между краями аплета. По умолчанию — «center» (по центру).

Если вы хотите использовать анимированный текст в качестве гиперссылки, просто поместите аплет (как изображение-гиперссылку) между начальным и ко — нечным дескрипторами привязки (). Установите атрибут href в начальном дескрипторе якоря равным URL-адресу Web-страницы, которую браузер должен будет вывести, когда посетитель выполнит щелчок на анимированном тексте.



Отображение и печать календаря на любой год

с помощью аплета

Когда вы просите пользователей ввести определенную дату (например, при бронировании номера в гостинице) или задать временной диапазон (например, спрашивая, в течение какого времени пользователь не работал), имеет смысл предоставить пользователям возможность обращаться к календарю. Таким обра —

зом, ваши посетители сочтут аплет calendar. clas s весьма полезным в случаях,

когда необходимо посмотреть дату, но печатного календаря под рукой нет. Аплет

calendar. class, написанный Керри Ньюманом (Kerry Newman), позволяет по — сетителям не только просматривать, но также распечатывать копию календаря на весь год — любой по выбору посетителя.



ПРАКТИКУМ

Аплет calendar. clas s вместе с исходным кодом доступен на сайте издателя русскоязычной редакции этой книги. Внешний вид календаря, который выводит

упомянутй аплет, показан на рис. 9.15.

Скопировав архив KNCaiendar. zip в папку на своем компьютере, извлеките

из него файл calendar. class. Чтобы с помощью аплета вывести на Web-страни —

це календарь, скопируйте. class-файл в ту же папку, где находится Web-страни- ца. Затем вставьте показанные ниже строки в HTML-код страницы, туда, где должен находиться календарь:

applet code=Mcalendar. class» width=»780″ height=»680″



Изменить внешний вид или размеры календаря с помощью параметров

нельзя. Однако посетители вашего сайта могут с помощью кнопок «FontColor»

(цвет шрифта) и «BackColor» (цвет фона) на календаре изменять цвета текста и фона.

Глава 9. Java-аплеты и объекты ActiveX 469





Конечно же, в файл KNCaiendar. zip входит исходный Java-код (файл

calendar, java). Следовательно, если на вашем компьютере установлен компи- лятор Java, например, тот, который входит в состав бесплатного комплекта инст- рументальных средств разработчика программного обеспечения на Java, доступ — ного на Web-сайте Sun Microsystems, вы всегда сможете изменить аплет так, чтобы он принимал параметры, например, начальную дату, требуемые цвета и размер шрифта.

Самоучитель по креативному веб-дизайну. Книга 3, стр.92



Отображение с помощью аплета отрывка, случайным образом выбранного из текстового файла

Одна из сложных задач, связанных с дизайном Web-сайта, состоит в поддер —

жании новизны содержимого. Аплет PetQuotes. clas s позволяет отображать от — рывки, взятые из текстового файла, по одному за раз. Случайно выбирая отры- вок для отображения, аплет наверняка будет отображать новый отрывок каждый

раз, когда браузер посетителя извлекает Web-страницу (см. рис. 9.16).

Аплет PetQuotes. clas s вместе с исходным кодом доступен на сайте изда — теля русскоязычной редакции этой книги. Скопировав архив PetQuotes. zip в

Папку На СВОеМ КОМПЬЮТере, ИЗВЛеКИТе ИЗ Него фаЙЛЫ PetQuotes. clas s И

PetQuotes. txt. Затем скопируйте Два файла (PetQuotes. class И PetQuotes. txt) В папку, где находится код Web-страницы. После этого вставьте показанные ниже строки в HTML-код страницы, туда, где должен выводиться отрывок текста:

47 0 Глава 9. Java-аплеты и объекты ActiveX







height=»72″


value=»24″>



param name=»bgcolor» value=»white»>



Для определения внешнего вида текста и цвета фона служат следующие пара — метры, которые можно передать аплету:

• font. Шрифт, который должен использовать аплет. По умолчанию —

«TimesRoman».



• font size. Размер шрифта в пунктах. По умолчанию — «18″.



• color. Цвет текста. Возможные значения — black (черный), white (бе-

лый), lightgray (светло-серый), gray (серЫЙ), darkgray (темно-серый),

red (Красный), pink (рОЗОВЫЙ), orange (оранжевый), yellow (желтый), green (зеленый), magenta (пурпурный), cyan (голубой) И blue (СИНИЙ). По умолчанию — «black».

• bgcolor. Цвет фона. Возможные значения — black (черный), white (бе-

лый), lightgray (светлО-СерЫЙ), gray (серый), darkgray (темно-серый),

red (краСНЫЙ), pink (рОЗОВЫЙ), orange (оранжевый), yellow (желтый), green (зеленый), magenta (пурпурный), cyan (голубой) И blue (СИНИЙ).

По умОЛЧаНИЮ — «white». ‘



Чтобы предоставить аплету для отображения свои собственные цитаты, анек —

доты или иные отрывки текста, отредактируйте соответствующим образом файл

PetQuotes. txt. В первой строке файла введите число строк текста в файле. За —

Глава 9. Java-аплеты и объекты ActiveX 47 1





тем на второй и последующих строках введите строки текста, которые должны

будут отображаться. Вводите каждый отрывок и его источник на отдельных стро —

ках в форме | |. Обратите внимание на символ двойной прямой черты (| |) между текстом каждой цитаты или отрывка и источ — ником (то есть автором) цитаты или отрывка. Приведенный ниже текст демонст-

Самоучитель по креативному веб-дизайну. Книга 3, стр.93

рирует пример содержимого, которое можно поместить в файл PetQuotes. txt :



з

Некоторые люди вершат во сне великие дела. Другие допоздна не ложатся

спать и эти дела делают. | |Аноним

Иногда крик стоит больше, чем диссертация.||Ральф Вальдо Эмерсон

Я две недели сидела на диете, но все, что мне удалось потерять, — это две

недели.||Тотти Филдс



Создание с помощью аплета навигационного меню, выполняющегося в отдельном окне

Создавая Web-сайт, вы стремитесь сделать так, чтобы посетитель сайта легко мог переходить с одной страницы на другую или «перескакивать» на конкретную

страницу Если посетителям приходится проходить через 15 документов, чтобы добраться до нужной им страницы, некоторые из них сделают закладку на этой странице, но большинство просто-напросто отправятся на другой Web-сайт, на котором проще ориентироваться. Чтобы облегчить навигацию по сайту, на каж —

дую его страницу можно поместить меню, состоящее из ошерссылок. Един — ственная проблема, связанная с навигационными меню, состоит в том, что на больших сайтах такие меню могут занимать немало места из-за большого коли — чества гиперссылок, которые приходится поддерживать.

К счастью, с помощью аплета MenuAppiet. clas s можно выводить навигаци — онное меню, содержащее до 400 гиперссылок — не жертвуя при этом простран- ством на экране в ущерб содержимому Web-сайта. Поскольку аплет отображает меню в новом окне, вам потребуется выделять место только для одной кнопки

Самоучитель по креативному веб-дизайну. Книга 3, стр.94

на каждой странице сайта, тем самым предоставляя посетителям возможность

вызывать навигационное меню, когда оно им понадобится (см. рис. 9.17).

Более того, аплет помогает организовать страницы на вашем сайте, позволяя разбивать страницы сайта на 20 категорий с 20 пунктами меню на каждую кате — горию.



ПРАКТИКУМ

Аплет MenuAppiet. class вместе с исходным кодом доступен на сайте издателя

русскоязычной редакции этой книги. Скопировав архив MenuAppiet. zip в папку

На СВОем компьютере, извлеките ИЗ Него ДВа. class-файла (MenuAppiet. clas s И

LabelButton. class) , .ini-фаЙЛ (MenuApplet. ini) И Web-СТраНИЦу меню

(menu. html). После того, как вы отредактируете содержимое. ini — и. html-фай — лов (как это сделать, рассказывается чуть ниже), скопируйте. class-файлы,

MenuAppiet. ini и menu. html в ту же папку, где находятся Web-страницы, в кото —

рые необходимо вставить кнопки «Site Menu» («Меню сайта») для вызова аплета

MenuAppiet. class.

47 2 Глава 9. Java-аплеты и объекты ActiveX







Файл MenuAppiet. ini содержит категории и пункты меню, которые посети- тель увидит в выведенном на экран аплетом меню. В этом. ini-файле содержат —

ся строки двух типов: строки, которые начинаются и заканчиваются знаком плюс (+), и строки, которые начинаются с обратной косой черты (\). Строки, которые начинаются (и заканчиваются) знаком плюс (+),— это категории меню, которые аплет отображает в своем левом столбце, под заголовком «Select» («Вы — берите»). Строки, начинающиеся с обратной косой черты (\), — это пункты меню, которые аплет отображает в своем правом столбце, озаглавленном «Go

То» («Перейти на…») . Когда посетитель щелкает на категории в столбце

«Select», аплет отображает пункты меню в выбранной категории в столбце «Go

То». Аналогично, когда посетитель щелкает на пункте меню в столбце «Go To»,

аплет дает Web-браузеру указание извлечь и отобразить Web-страницу в окне,

имя которого передается аплету в параметре targetwindow (он рассматривается далее в этой главе).

Откройте файл .MenuAppiet. ini в текстовом редакторе и замените содержи — мое файла на свои собственные категории и пункты меню. Открыв файл в пер — вый раз, вы увидите строки, похожие на приведенные ниже:



+Тестовые страницы+

\Тестовая страница

1\

«test_html/testl. html»

\Тестовая страница

2\

«test_html/test2.html»

+ССЫЛКИ+





\Диасофт\ «http://www. diasoft. kiev. ua»

\NVBizNet\ «http://www. NVBizNet. com»

Глава 9. Java-аплеты и объекты ActiveX 47 3





Чтобы добавить в меню категорию, наберите текст категории между знаками

ПЛЮС (+), как набраны ЗаПИСИ Категорий +Тестовые страницы* И +Ссылки+ В данном примере. Для добавления в категорию пунктов меню наберите текст пун — кта меню между символами обратной косой черты, а за ним — в двойных кавыч — ках относительный или URL-адрес, который должен будет извлечь браузер. В

данном примере \Тестовая страница 1\ — пункт меню В категории «Тестовые

страницы», a «test_htmi/testi. htmi » — относительный адрес Web-страницы,

которую браузер должен извлечь, когда посетитель щелкнет на пункте меню «Тестовая страница 1″. Обратите внимание, что каждый пункт меню необхо- димо определять внутри категории, при этом каждая категория может содержать не больше 20 пунктов меню.

Самоучитель по креативному веб-дизайну. Книга 3, стр.95

Заглянув в содержимое Web-страницы меню (menu. html), вы увидите, что она содержит код, аналогичный приведенному ниже, который внедряет аплет

MenuAppiet. clas s в Web-страницу:



height=»144″>


name=»fontType» value=»TimesRoman»>

value=»0″>





Имейте в виду, что аплет MenuAppiet. class позволяет отображать навигаци —

онное меню в окне, отличном оттого, в котором отображаются Web-страницы сайта. Таким образом, вы внедряете аплет меню в его собственную Web-страницу

(в данном примере menu. html), а не в HTML-код какой-то из страниц с содер — жимым сайта.

Чтобы персонализировать аплет, откройте Web-страницу меню menu. html в текстовом редакторе и установите необходимые значения следующих трех пара — метров:

• targetwindow. Окно, в котором аплет должен будет отображать Web-стра — ницу, извлеченную после щелчка на пункте меню. По умолчанию —

» self».

• fontType. Шрифт, которым аплет должен отображать категории и пункты

меню. По умолчанию — «Helvetica».

• fontstyie. Число от 0 до 3, которое определяет’ стиль шрифта текста

меню, о = обычный, 1 = полужирный, 2 = курсив и з = полужирный кур — сив. По умолчанию — «О».



Чтобы посетители смогли получить доступ к меню, вставьте в свои Web-стра — ницы, туда, где должна будет находиться кнопка, щелчок на которой приводит к открытию навигационного меню, следующее определение формы:



input type=»button» name=»NavButton» value=»MeHio сайта»

onClick=»window. open(‘menu. html’, ‘SiteNavMenu’,

•menubar=no, height=166, width=244•)»>



47 4 Глава 9. Java-аплеты и объекты ActiveX





В данном примере определение формы содержит стандартную кнопку с над —

писью «Меню сайта». Как только посетитель щелкнет на этой кнопке, Web-бра — узер выполнит JavaScript-код, связанный с кнопкой, который откроет Web-стра-

ницу меню (menu, html) В НОВОМ ОКНе С именем SiteNavMenu. Аплет

MenuAppiet. class (внедренный в Web-страницу memi. html) отобразит затем на —

вигационное меню В ОКНе SiteNavMenu.

Последнее, что вам необходимо принять в расчет — это размер окна, в кото —

ром аплет MenuAppiet. class должен отображать навигационное меню. Чтобы вычислить высоту окна, вернитесь к определению меню, которое вы создали в

MenuAppiet. ini, и определите, чего больше в вашем меню — категорий или пун — ктов меню в одной категории. Затем воспользуйтесь формулой



высота = (л + 1) * 18 ,



где п — максимальное число категорий или максимальное число ссылок в одной категории (выбрать большее). Чтобы вычислить ширину, воспользуйтесь форму — лой



ширина >= 12 + (р * 7) + (q * 1) ,



где р — число символов в самом длинном названии категории, a q — число сим — волов в самом длинном пункте меню.

Вычислив высоту и ширину, присвойте полученные значения атрибутам

height и width в начальном дескрипторе HTML-кода Web-страницы меню (то есть в файле menu. html). Затем возьмите вычисленные значения высо — ты и ширины аплета, добавьте к каждому из них 20 и присвойте полученные

значения параметрам height и width, которые передаются JavaScript-кодом фун —

кции window, open, В дескрипторе ВВОДа
ДЛЯ КНОПКИ «Меню сайта».

Дополнительным преимуществом использования аплета является то, что вы сможете в любое время вносить изменения в навигационное меню (модифици —

руя файл MenuAppiet. ini), причем эти изменения, будут мгновенно отражаться

на всех страницах, в которые была вставлена кнопка «Меню сайта». (В случае вставленной в каждую страницу традиционной навигационной панели вам при —

шлось бы вносить одни и те же изменения в меню многократно — на каждой стра — нице сайта.)



Прокручивание содержимого файла по вертикали в прямоугольной области на экране с помощью аплета

Если вам нужно прокручивать одну строку текста горизонтально на экране, браузер Internet Explorer позволяет задать прокручиваемый текст между началь —

ным И конечным дескрипторами бегущей СТрОКИ (). Чтобы получить более гибкое решение, можно написать JavaScript-сценарий, выполняю — щий ту же функцию, поскольку браузер Netscape Navigator не поддерживает дес — крипторы бегущей строки, но и Netscape Navigator, и Internet Explorer поддержи —

вают JavaScript. Если, же вы хотите отображать на экране несколько строк текста

одновременно и прокручивать текст по горизонтали, вам понадобится нечто

большее, чем простая бегущая строка; вам понадобится аплет NewsScroiier.

Глава 9. Java-аплеты и объекты ActiveX 47 5





Аплет NewsScroiier, написанный Е. А. Грэхемом-мл. (Е. A. Graham, Jr.), по —

зволяет прокручивать текст из ASCII-файла вертикально внутри прямоугольной области на Web-странице, как показано на рис. 9.18.



Внутри входного файла, который будет отображаться, аплет позволяет обозна — чить одно — и многострочные заголовки, сообщения и гипертекст — причем все своими цветами.



ПРАКТИКУМ

Аплет NewsScroiier вместе с исходным кодом доступен на сайте издателя рус —

скоязычной редакции этой книги. Скопировав архив NewsScroiier. zip в папку

на своем компьютере, извлеките из него файлы Scroller, jar и News. txt. Затем, чтобы использовать аплет на своей Web-странице, скопируйте файл Java-архива

Scroller, ja r и файл новостей News. txt в ту же папку, где находится Web-стра- ница. Затем вставьте приведенные ниже строки в HTML-код Web-страницы, туда, где должен появляться прокручиваемый текст:



archive=»scroller. jar» width=»400″ height=»150″>

value=»News. txt»>



param name=»HeadColor» value=»#FF0000″>

name=»Font» value=»Serif»>

t



param name=»MousePause» value=»">

name=»TopPause» value=»0″> *



param name=»Foreground» value=»#000000″>

name=»Background» value=»#FFFFFF»>

value=»8″>

gif. gif»>

47 6 Глава 9. Java-аплеты и объекты ActiveX




top»>



param name=»ScrollBy» value=»l»>





Для настройки аплета испольхуются следующие параметры:

• DataFiie. Относительный или URL-адрес файла с заголовками, гипертек — стовыми ссылками и сообщениями, которые необходимо отображать. По уМОЛЧаНИЮ — «News. txt» .

• ciickcoior. Цвет (выраженный в виде шестнадцатеричного триплета), с использованием которого аплет будет выводить текст гиперссылок из фай —

ла данных. По умолчанию — «#OOOOFF» (СИНИЙ).

• HeadCoior. Цвет (выраженный в виде шестнадцатеричного триплета), к с использованием которого аплет будет выводить текст заголовков из файла данных. По умолчанию — «#FFOOOO» (красный).

• Font. Шрифт, которым будет отображаться текст, определенный в файле

данных. По уМОЛЧаНИЮ — «Serif» .

• Fontsize. уРазмер шрифта прокручиваемого текста. По умолчанию — «12″.

• MousePause. Если передан этот параметр, даже со значением пустой стро —

ки («»), аплет NewScroiier прекратит прокручивать текст, когда посети- тель наведет курсор мыши на аплет, и начнет прокручивать текст заново, когда посетитель уберет курсор с аплета. Чтобы прокручивание текста не

прерывалось перемещениями курсора, не используйте параметр

MousePause.

• TopPause. Время (в миллисекундах), в течение которого каждый заголовок должен задерживаться у верхнего края области просмотра. По умолча — нию — «О».

• Refresh. Время (в минутах), по прошествии которого аплет начинает по — вторное чтение файла новостей. По умолчанию — «О» (то есть не повто — рять).

• Foreground. Цвет (выраженный в виде шестнадцатеричного триплета), с использованием которого аплет будет выводить текст сообщений из файла

данных. По умолчанию — «#оооооои (черный).

• Background. Цвет (выраженный в виде шестнадцатеричного триплета)

фона аплета. По умолчанию — «#FFFFFF M (белый).

• Border. Ширина в пикселях границы вокруг аплета. По умолчанию — «0м.

• Picture. Относительный или URL-адрес файла с графическим изображе — нием, которое будет использоваться в качестве фона аплета.

• Target. Окно, в котором айлет дает Web-браузеру указание отобразить Web-страницу, извлеченную браузером, когда посетитель щелкает на гипер — текстовой ссылке в прокручиваемом тексте.

• sieepTime. Время ожидания (в миллисекундах) между обновлениями. По умолчанию — «30″.

Глава 9. Java-аплеты и объекты ActiveX 47 7





• scroiiBy. Число пикселей, на которое аплет прокручивает текст в течение

каждого цикла обновления. По умолчанию — «1″ .



Для того чтобы определить текст, отображаемый аплетом, откройте и моди — фицируйте в текстовом редакторе содержимое файла, заданного в параметре

DataFile (по умолчанию это файл News. txt). Файл новостей состоит из заго — ловка, гиперссылки, фрейма, сообщения и метки завершения, которые обознача- ются следующими дескрипторами:

• @HEAD. Указывает, что дальше идут заголовочные данные. Каждый пункт

новостей начинается со строки @HEAD (TO есть заголовка). Заголовочные данные могут располагаться на нескольких строках. Следующий за ними

дескриптор @URL, @MSG или @END прекращает действие дескриптора заголовка.

• @URL. Указывает, что дальше идут данные гиперссылки. Аплет будет вос —

принимать весь текст до следующего дескриптора @END как часть гиперс — сылки, на которой посетитель может щелкнуть, чтобы загрузить другую

Web-страницу.

• @FRAME. Указывает, что дальше идет имя целевого фрейма или целевого

окна. Дескриптор @FRAME должен находиться после дескриптора @URL, рас — положенного на предыдущей строке.

• @MSG. Указывает, что дальше идут данные сообщения. Чтобы завершить

сообщение, необходимо поместить дескриптор @END В строку, следующую

за последней строкой сообщения.

• @END. Указывает, что строка в файле новостей является завершающей стро — кой сообщения.

Примером того, как определять заголовки, гиперссылки и сообщения для

отображения аплетом, может послужить содержимое файла News. txt, который

ВЫ ИЗВЛеКЛИ ИЗ архива NewsScroller. zip.



Анимация синусоидальных колебаний изображения с помощью аплета

В предыдущем практикуме было показано, как выполнить анимацию текста с помощью аплета, который перемещает текст слева направо (или справа налево) по экрану в соответствие с синусоидальным законом. Вместо того, чтобы для со —

Самоучитель по креативному веб-дизайну. Книга 3, стр.96

здания анимированного баннера прокручивать текст по синусоиде, можно вос —

пользоваться аплетом siniogo. clas s для анимации статического изображения, например, логотипа, как показано на рис. 9.19.







Рис. 9.19. Два представления одного и того же логотипа: слева — статический логотип,

справа — анимированный логотип

47 8 Глава 9. Java-аплеты и объекты ActiveX





Обратите внимание, что буквы в верхнем логотипе на рис. 9.19 находятся на

одном уровне. Символы же в нижнем логотипе находятся на неодинаковой высо — те, демонстрируя, как аплет выравнивает нижнюю часть логотипа вдоль синусоиды.



ПРАКТИКУМ

Аплет siniogo. clas s вместе с исходным кодом доступен на сайте издателя рус — скоязычной редакции этой книги. Скопировав архив sinLogo. zip в папку на

своем компьютере, извлеките из него файл siniogo. class. Затем, чтобы исполь —

зовать аплет на своей Web-странице, скопируйте siniogo. clas s и изображение, анимацию которого необходимо выполнить, в ту же папку, где находится код Web-страницы. Далее вставьте приведенные ниже строки в HTML-код Web-стра — ницы, туда, где должен будет появиться анимированный текст:



height=»97″>



param name=»angle_add» value=»1.9″>

name=»bg_red» value=»0″>



param name=»bg_blue» value=»0″>



Для настройки анимационного эффекта, создаваемого аплетом, используются следующие параметры:

• xmage_iogo. Имя и путь GIF — или JPEG-файла, анимацию которого необ — ходимо выполнить с помощью аплета.

• angie_add. Коэффициент, то есть величина, на которую аплет смещает ча- стицы изображения от базовой синусоиды. Чем выше это значение, тем

больше будет амплитуда движения вверх-вниз различных частей изображе —

ния. По умолчанию — «0.5 м.

• bg red. Значение красной RGB-составляющей цвета фона (заданное в де — сятичном виде).

• bg green. Значение зеленой RGB-составляющей цвета фона (заданное в десятичном виде).

• bg biue. Значение синей RGB-составляющей цвета фона (заданное в де — сятичном виде).



Аплет работает, превращая цвет пикселей в части изображения в цвет фона, в

то же время превращая цвет пикселей в фоне другой части картинки в цвет

изображения. Таким образом, самое главное — это задать параметры bg red,

bg_green и bg_biue, которые сообщают аплету цвет фона, чтобы аплет смог со — здать видимость того, что частички изображения исчезают и вновь появляются

по синусоидальному закону.

Глава 9. Java-аплеты и объекты ActiveX 47 9





Редактирование исходного Java-кода для компиляции пользовательского аплета

На протяжении этой главы вы настраивали аплеты в соответствии со своими потребностями с помощью дескриптора . В Web можно найти сотни го — товых аплетов, которые можно свободно выгружать и включать в состав своих Web-страниц. Обычно настраивать аплеты можно с помощью дескриптора

, как это делалось в предыдущих практикумах. Тем не менее, некоторые аплеты не принимают параметры настроек. Чтобы персонализировать те аплеты,

которые не позволяют передавать значения настроек посредством дескриптора

, вам придется редактировать операторы Java-программы, которые были написаны программистом, создавшим аплет. Следовательно, настраивать такие аплеты можно только в том случае, если программист дает вам возможность заг-

Самоучитель по креативному веб-дизайну. Книга 3, стр.97

рузить файл с исходным кодом. Прежде чем начать корректировать Java-аплеты пу- тем редактирования операторов программы, вы должны понимать действия, вы- полняемые программистом при создании аплета.

Разрабатывая программу, программист с помощью языка программирования,

например, Java, Visual Basic или C++, задает инструкции, которые должны быть»

выполнены компьютером. Инструкции (то есть операторы программы) програм —

мист помещает в файл, который носит название исходного файла программы (в

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

как для HTML-страниц используются расширения файлов. htm или .html, для исходных файлов Java используется расширение. java.

Ранее в этой главе рассматривался аплет NervousText, который «дергает» на

экране буквы в текстовом сообщении, так, чтобы буквы казались «нервными». Приведенные ниже операторы представляют собой исходный код упрощенной

версии аплета, которую можно назвать Nervous, java. (Язык программирования Java чувствителен к регистру; это значит, что он отличает заглавный и строчный варианты одной и той же буквы. Следовательно, создавая исходный файл

Nervous, java, не забудьте использовать в имени файла заглавную «N».)



import java. awt. event.*;

import java. awt. Graphics;

import java. awt. Font;

import java. applet. Applet; _

public class Nervous extends Applet implements Runnable

{

String banner;

char bannerChars[]; Thread runner = null; public void init()

{

banner = «I’m nervous!»;

int bannerLength = banner. length();

bannerChars = new char[bannerLength];

banner. getChars(0, banner. length(), bannerChars, 0);

48 0 Глава 9. Java-аплеты и объекты ActiveX





вовсе не обязательно понимать конкретное предназначение операторов в исходном файле Java; цель этого практикума — выгрузить и «ввести в эксплуата —

цию» комплект инструментальных средств разработчика программного обеспече-

ния на Java (Java Software Development Kit — SDK) из посвященного Java Web —

сайта Sun Microsystems. В результате вы сможете скомпилировать свой первый

Java-аплет.

Как вы уже знаете, Java-аплет состоит из обобщенного байт-кода (то есть файла, заполненного единицами и нулями), который выполняется браузером. Чтобы преобразовать операторы, которые находятся в исходном Java-файле, в единицы и нули, из которых состоит байт-код, выполняемый Web-браузером, программисты применяют специальную программу, называемую компилятором.



Полезные ссылки
Случайные записи
  • 09.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.149
  • 14.07.2011">Почему продвижение неизбежно
  • 18.03.2011">Руководство по actionscript. часть 2, стр. 129
  • 04.03.2012">YouTube будет транслировать балетные спектакли из Большого театра
  • 23.08.2011">Покупайте только качественный трикотаж
  • 10.02.2011">Выбор формата сохранения изображения в Photoshop
  • 11.05.2010">Самоучитель по креативному веб-дизайну. Книга 1, стр.37
  • 19.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.25
  • 06.07.2011">Новая серия ультрапортативных ноутбуков Acer
  • 15.03.2011">Руководство по actionscript. часть 3, стр. 034
  • 17.05.2010">Самоучитель по креативному веб-дизайну. Книга 2, стр.136
  • 20.03.2011">Руководство по actionscript. часть 2, стр. 058
  • 06.03.2011">Руководство по actionscript. часть 4, стр. 144
  • 10.03.2011">Руководство по actionscript. часть 4, стр. 021
  • 02.03.2011">Руководство по actionscript. часть 5, стр. 096
Опрос

Какие цвета вы предпочитаете?

View Results

Loading ... Loading ...