Класс MediaTracker
Сначала конструктором MediaTracker (Component comp) создается объект класса для указанного аргументом компонента. Аргумент конструктора чаще всего this.
Затем методом addlmage(Image img, int id) регистрируется Изображение img под порядковым номером id. Несколько изображений можно зарегистрировать под одним номером.
После этого логическими методами checkID(int id), checkID(int id, boolean load) и checkAll () проверяется, загружено ли изображение с порядковым номером id или все зарегистрированные изображения. Методы возвращают true, если изображение уже загружено, false – в противном случае. Если аргумент load равен true, то производится загрузка всех еще не загруженных изображений.
Методы statusID(int id), statusID(int id, boolean load) и statusALL возвращают целое число, которое можно сравнить со статическими константами COMPLETE, ABORTED, ERRORED.
Наконец, методы waitForID(int id) и waitForAll() ожидают окончания загрузки изображения.
В следующей главе в листинге 15.5 мы применим эти методы для ожидания загрузки изображения.
Изображение, находящееся в объекте класса image можно создать непосредственно по пикселам, а можно получить из графического файла, типа GIF или JPEG, одним из двух методов класса Applet:
- getimage(URL address) – задается URL-адрес графического файла;
- getImage(URL address, String fileName) – задается адрес каталог address и имя графического файла filename.
Аналогично, звуковой файл в апплетах Представляется в виде объекта, реализующего интерфейс Audiociip, и может быть получен из файла типа AU, AIFF, WAVE или MIDI одним из трех методов класса Applet с такими же аргументами:
getAudioClip(URL address) getAudioClip(URL address, String fileName) newAudioClip(URL address)
Последний метод статический, его можно использовать не только в апплетах, но и в приложениях.
Интерфейс Audioclip из пакета java .applet очень прост. В нем всего три метода без аргументов. Метод play () проигрывает мелодию один раз. Метод loop () бесконечно повторяет мелодию. Метод stop () прекращает проигрывание.
Этот интерфейс реализуется браузером. Конечно, перед проигрыванием звуковых файлов браузер должен быть связан со звуковой системой компьютера.
В листинге 14.9 приведен простой пример загрузки изображения и звука из файлов, находящихся в том же каталоге, что и HTML-файл. На рис. 14.5 показано, как выглядит изображение, увеличенное в два раза.