Апплет Java, как и программа на JavaScript, должен выполняться из гипертекстового документа HTML. Именно с этим свойством апплетов связано происхождение термина "выполняемое содержимое". Чтобы включать апплеты в файл HTML, испульзуется HTML-тег <applet>. Тег <applet> является контейнерным тегом. Это значит, что в тексте гипертекстового документа за этим тегом обязательно должен быть указан закрывающий тег </applet>. Ниже привожу синтаксис тега <applet> (необязательные атрибуты выделены синим цветом ).
<applet code="File.class" codebase="ClassDirectory" width=w height=h vspase=vs hspace=hs alt=text name=appletName align=left | right | top | middle | baseline | bottom | <param name=ParamName value=ParamValue> HTMLТекст... </applet>
где атрибут code задает имя загружаемого файла с расширением .class, codebase - имя каталога, в котором содержится данный файл (файлы) с расширением .class, width - ширина области вывода апплета в пикселях, а height - ее высота. Использовать кавычки (") в именах аргументов необязательно. Тег <param> предназначен для задания имен (ParamName) и значений (ParamValue) параметров, которые передаются апплету из файла HTML. Допускается задание нескольких тегов <param>. HTMLText - текст, предназначенный для пользователей, которые применяют броузеры, не поддерживающие язык Java. Этот текст выводится на экран в том виде, в каком указан в донном теге. Он должен задаваться в формате HTML, и его длина не ограничивается. Атрибут alt предназначен для вывода теста в окнах броузеров, которые распознают тег <applet>, но не могут выполнить апплет. Атрибут align, по своему действию аналогичен тегу <img align=... scr>. Атрибут align предназначен для задания способа размещения области вывода апплета на странице. Атрибутами vspace и hspace задаются размеры поля пустого пространства над и под областью вывода апплета (значения обоих атрибутов указываются в пикселях).
Например можно задать следующий тег <applet>:
<applet code="MyApplet.class" codebase="CLASSES" width=150 height=150 <hr>To viev this applet you will need a Java-aware browser!<p> <img scr="scrndump.gif"><hr> </applet>
Этот тег осуществляет вызов апплета MyApplet.class. Для пользователя, просматривающего данную страницу с помощью броузера, который не поддерживает Java, на экране будет отображаться текст "To viev this applet you will need a Java-aware browser!" (Для просмотра этого апплета вам понадобится броузер, поддерживающий Java), а также графическое изображение (заданное в теге <img scr...>). Авторы некоторых приложений предпочитают в таких случаях выводить вместо текста "картинку" - такую, какую увидел бы на экране пользователь, распологающий поддерживающим Java броузером. При запуске область вывода апплета будет занимать квадратный участок экрана размерами 150х150 пикселей. Разработчик апплета должен позаботиться о том, чтобы выводимые апплетом данные не попадали за пределы выделенной для них области. (В апплетах можно задавать размеры области отображения, в которую будет выводится информация. Если с помощью необязательных атрибутов width/heigh не задана область вывода апплета, то данные будут выводиться и отображаться в области экрана, заданной в самом апплете.) Включение апплета в страницу без соответсвующего текста, предназначенного для тех пользователей, у которых броузеры, не поддердивают Java, принято считать невежливым. Атрибутом codebase в этом примере задается, что файл MyApplet.class находится в подкаталоге CLASSES каталога, в котором содержится HTML-файл.
Пример использования тегов <applet>.
Рассмотрим следующий пример:
<applet code="MyApplet.class" codebase="myclasses"> Апплет распологался бы здесь ! </applet>
В этом фрагменте текста HTML атрибутом codebase задается каталог myclasses. Этот каталог является подкаталогом каталога, из которого был загружен данный файл HTML. Например если приведенные выше теги входят в состав HTML-файла C:AppletsDemo_Applet.html, то броузер будет искать файл MyApplet.class в каталоге C:Appletsmyclasses.
Приведённый выше тег <applet> можно использовать для вызова локальных апплетов (например, чтобы проверить апплет сначала на своём компьютере, а потом уже поместить его на Web-сервер). Примечание: Не все апплеты могут выполняться локально.
Конечно же, апплет может размещаться не только в том каталоге, где находится вызывающий его файл HTML, а и в любом другом месте Internet. В таких случаях в атрибуте codebase необходимо указать URL файла апплета с расширением .class, например:
<applet code="RemoteApplet.class" codebase="http://www.somehost.com/appletdir/classes/"> Пример апплета. </applet>
В этом примере вызывается апплет RemoteApplet.class, расположенный на хосте Internet www.somehost.com в каталоге /appletdir/classes/. Для того чтобы загрузить апплет в вашу систему, броузер использует протокол передачи гипертекстовых документов (HyperText Transfer Protocol - HTTP), а выполнение апплета осуществляется под управлением встроенного в броузер ядра Java.
Если вы решили передать ваши апплеты на Web-сервер (через FTP), убедитесь, что в HTML-файле, в котором они используются, правильно задан атрибут codebase. Если файл апплета с расширением .class находится в том же каталоге, что и соответствующий HTML-файл, вызывающий данный апплет, т.е. содержащий тег <applet>, атрибут codebase можно вообще опустить. Лучше, однако, если это возможно, хранить файлы с расширением .class и исходные тексты программ на языке Java в разных каталогах.
|