Druzya.org
Возьмемся за руки, Друзья...
 
 
Наши Друзья

Александр Градский
Мемориальный сайт Дольфи. 
				  Светлой памяти детей,
				  погибших  1 июня 2001 года, 
				  а также всем жертвам теракта возле 
				 Тель-Авивского Дельфинариума посвящается...

Библиотека :: Компьютеры и Программирование :: А.В. Фролов, Г.В. Фролов - Microsoft Visual J++
<<-[Весь Текст]
Страница: из 275
 <<-
 
плетов.
   Этот список будет записан в поле eApplets класса Enumeration.
   Когда в процессе поиска наш аплет найдет аплет Audio, то в поле appAudio 
будет записана ссылка на него.
   Кроме того, в классе Inspector определены поля btPlay, btLoop и btStop для 
хранения ссылок на кнопки управления аплетом Audio.
   Метод getAppletInfo
   Метод getAppletInfo предоставляет другим заинтересованным аплетам (и себе, в 
частности) строку информации об аплете Inspector. Эта строка аналогична строкам,
 которые возвращают другие наши аплеты.
   Метод init
   Метод init создает три кнопки, предназначенные для управления аплетом Audio, 
причем кнопка с названием Stop блокируется:
btPlay = new Button("Play");
btLoop = new Button("Loop");
btStop = new Button("Stop");
btStop.disable();
   Далее созданные кнопки добавляются в окно аплета Inspector.
add(btPlay);
add(btLoop);
add(btStop);
   Метод paint
   После раскрашивания фона окна и рисования рамки метод paint получает с 
помощью метода getAppletContext ссылку на интерфейс AppletContext:
appContext = getAppletContext();
   Далее с помощью этой ссылки и метода getApplets приложение получает список 
всех аплетов, расположенных в текущем документе HTML;
eApplets = appContext.getApplets();
   Вслед за этим метод paint запускает цикл, в котором он получает ссылки на 
все найденные аплеты:
while(eApplets.hasMoreElements())
{
  . . .
}
   В этом цикле с помощью метода nextElement приложение получает ссылку на 
очередной аплет и, после преобразования ее к типу Applet, сохраняет в 
переменной currentApplet:
Applet currentApplet = (Applet)(eApplets.nextElement());
   Для каждого найденного аплета вызывается метод getAppletInfo:
appName = currentApplet.getAppletInfo();
   Полученная строка обрезается до первого символа возврата каретки или 
перевода на новую строку и записывается в переменную appName:
StringTokenizer st;
st = new StringTokenizer(appName, "\r\n");
appName = new String((String)st.nextElement());
   Содержимое этой переменной (имя аплета) отображается в окне аплета Inspector 
со сдвигом по вертикали, который завивит от номера найденного аплета:
g.drawString(appName , 10, 15 * i + 50);
   В том случае, если в процессе получения строк информации об аплете был 
найден аплет Audio, выполняется преобразование типа ссылки на этот аплет и 
сохранение этой ссылки в поле appAudio:
if(appName.equals("Name: Audio"))
{
  appAudio = (Audio)currentApplet;
}
   Метод action
   Метод action обрабатывает события, вызванные нажатием кнопок в окне аплета 
Inspector. Обработка заключается в вызове сооветствующего метода с 
использованием ссылки на аплет Audio. Например, если пользователь нажал кнопку 
Play, метод action вызывает метод play:
if(evt.target.equals(btPlay))
{
  appAudio.auClip.play();
  btStop.enable();
}
   Обратите внимание, что здесь мы ссылаемся через поле appAudio на поле auClip,
 определенное в аплете Audio.
7 КОМБИНИРОВАННЫЕ ПРИЛОЖЕНИЯ JAVA
   Наши предыдущие приложения были либо аплетами, либо автономными приложениями 
с консольным окном. Основной класс аплетов был унаследован от класса Applet, а 
в классе консольных приложений был определен метод main.
   В этой главе мы расскажем о том, как создавать комбинированные приложения, 
двоичный файл .class которых способен работать и как аплет, встроенный в 
документ HTML, и как автономное приложение. Система автоматизированного 
проектирования приложений Java Applet Wizard, встроенная в Mi
 
<<-[Весь Текст]
Страница: из 275
 <<-